您当前位置: 首页 > 技术中心 > 地理信息系统(GIS)基础知识

地理信息系统(GIS)基础知识

发布日期:2023.06.30
关注与分享:

前言

地理信息系统(GIS)是一种强大的工具,它可以帮助我们可视化和分析各种地理信息,从而更好地决策和规划。 GIS将地图和数据结合起来,让人们可以更好地分析和管理空间数据。在许多领域,如环境管理、城市规划、公共卫生和交通管理等,GIS都扮演着重要的角色。我们日常生活中更是离不开高德/百度地图这样的地图导航软件,公司项目中也经常用到地图或者地理位置相关的技术,这些都是GIS系统的应用。所以本期就来详细介绍地理信息的基础知识,让大家对GIS有一个更清晰的了解。


一、GIS概念


地理信息系统(Geographic Information System,简称GIS)有时又称为“地学信息系统”,它是一种特定的十分重要的空间信息系统。它是在计算机硬、软件系统支持下,对整个或部分地球表层、空中和地下空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述的技术系统。



地理信息系统,从广义上讲,是一门集地理学与地图学以及遥感和计算机科学等众多学科于一体的综合性前沿交叉学科;从狭义上说,它是一种用于对地理空间数据进行采集、存储、操作、分析、显示和输出的计算机系统,现已被广泛应用于国计民生的各个领域。世界上第一个投入运行的GIS系统于1967年诞生于加拿大,我国对GIS的研究和应用起步于20世纪80年代。近年来,随着GIS的发展,GIS也被称为“地理信息科学”(Geographic Information Science)和“地理信息服务”(Geographic Information Service)。


国家公共GIS服务平台


GIS 是一种基于计算机的工具,它具有强大的空间分析能力(简而言之,是对地球上存在的现象和发生的事件进行成图和分析)。GIS 技术把地图这种独特的视觉化效果和地理分析功能与一般的数据库操作(例如查询和统计分析等)集成在一起。

GIS 属于信息系统的一类,它能操作和处理地理空间数据。在GIS中,地理空间数据同时描述了地球表面地理要素的空间位置和属性,也就是说,地理空间数据包括空间数据和属性数据两部分,其中,空间数据描述地理要素的空间几何特征(点、线、面、体等),属性数据提供空间要素的相关属性信息(如名称、种类、颜色、大小等)。


矢量地图展示


GIS 中的所有数据都具有地理参照,也就是说,数据通过某个坐标系统与地球表面中的特定位置发生联系。地理信息系统(GIS)与全球导航卫星系统(Global Navigation Satellite System, 简称GNSS)、遥感系统(Remote Sensing, 简称RS)合称3S系统。


3S系统


二、GIS 的组成部分

一套完整的GIS系统由硬件、软件、数据、人员和方法五个部分构成。



人员

人员,是GIS 中最重要的组成部分。开发人员必须定义GIS 中被执行的各种任务,开发处理程序。熟练的操作人员通常可以克服GIS 软件功能的不足,但是相反的情况就不成立。最好的软件也无法弥补操作人员对GIS 的一无所知所带来的负作用;

数据

数据,数据是GIS应用系统最为基础的组成部分,堪称GIS的“血液”,包括空间数据和属性数据。精确的可用的数据可以影响查询和分析的结果;

硬件

硬件,GIS系统的硬件是指支撑GIS运行所需的一切计算机资源。一个典型的GIS硬件系统除计算机外,通常还包括绘图仪、网络设施、存储设施、安全防护设施等外部设备。硬件的性能影响到软件对数据的处理速度,使用是否方便及可能的输出方式;

软件

软件,软件是指GIS运行所必需的各种程序,提供存储、分析和显示地理信息的功能和工具。GIS软件由计算机系统软件、地理信息系统工具软件以及应用程序软件等内容组成。不仅包含GIS 软件,还包括各种数据库,绘图、统计、影像处理及其它程序;

方法

方法。这里的方法指应用模型,也称地理过程模型。它是在对专业领域的具体对象与地理过程进行大量研究的基础上总结出的规律的表示。GIS应用就是利用这些模型对大量空间数据进行分析综合来解决实际问题的。如基于GIS的灾害评价模型、空间选址模型、洪水淹没模型等。


三、GIS 空间数据


(一)空间数据结构

1.空间数据结构

地理实体的特征:

属性特征;

空间特征;

时间特征;

地理实体数据的类型:

属性数据;

几何数据;

关系数据;(描述空间实体之间的空间关系数据,如实体的邻接、关联、包含等,主要指拓扑关系)

(一般我们在这里讨论的只是空间数据,属性数据要结合实际的情况)

所以在存储上回有别于一般的数据,有着自己特有的存储方式、数据存储格式。


2.GIS中的数据存储格式有:

(1)矢量数据格式

世界的本质是物质,对于 GIS 来说,点就应该是矢量数据的本质,点生线,线生面……,如此组合,构成了 GIS 世界中的矢量空间。



点构成一切

点(Point):单点、多点;


点数据展示


线(Linestring):直线、圆弧、椭圆弧、贝塞尔曲线;(只有两个点的线)

线路(Path):连续线的集合;

环线(Ring):封闭的多段线;

多段线(Polyline):多个Path对象的集合;


线数据展示


多边形(Polygon):由一个或多个Ring对象的有序集合;


多边形(面)数据展示


数据获取:

外业测量、由栅格数转换获得、跟踪数字化


(2)影像数据格式(栅格数据格式)

栅格数据结构基于栅格模型的数据结构。是指将空间分割成有规则的网格,称为栅格单元,在各个栅格单元上给出相应的属性值来表示地理实体的一种数据组织形式。

栅格数据结构中,点由一个单元网格表示,线由一串有序的相互链接的单元网格表示,各个网格的值相同。多边形由聚集在一起的相互连接的单元网格组成,区域内部网格值相同,外部不同。每个网格对应一种属性。其空间位置用行与列表示。网格边长决定数据精度,但在表示地理实体时,信息都有丢失,这是由于复杂的实体采用统一格网造成的。一般通过保证最小多边形的精度标准来确定网格尺寸,可以有效逼近实体又能最大程度减少数据量。


栅格模型


与矢量数据结构相比,其表达地理要素比较直观,容易进行多层数据的叠合操作。但数据精度取决于网格边长,当边长缩小时网格数量会呈几何级数递增,使储存空间迅速增加;由于相邻网格单元属性值的相关性,造成栅格数据冗余度大;栅格数据对于网络分析比较困难等。


(3)地形数据格式(高程数据)

地形数据的生成需要高程数据dem,dem是一种常用的地形数据格式,是由栅格数据结构表示的地形特征数据集。dem数据文件通常包含一个或多个栅格数据文件,每个栅格数据文件包含地形的一个方向(南北方向或东西方向)和一定间隔的像素值。dem数据可以用于地形分析、地貌建模、土地利用规划等领域。


(二)存储方式

数据储存方式主要分为两类:本地文件存储方式、数据库存储方式。


1.SHP(Shapeflie)

一个Shape文件包括三个文件:一个主文件(*.shp),一个索引文件(*.shx),和一个dBASE(*.dbf)表

坐标文件(.shp)

属性文件(.dbf)

索引文件(.shx)

除此之外还有一些可选的文件:

空间参考文件(.prj)

几何体的空间索引文件(.sbn、sbx)

只读的几何体空间索引文件(.fbn、.fbx)


shp数据展示


2.GeoJSON

GeoJSON是一种对各种地理数据结构进行编码的格式。GeoJSON对象可以表示几何、特征或者特征集合。GeoJSON支持下面几何类型:点、线、面、多点、多线、多面和几何集合。GeoJSON里的特征包含一个几何对象和其他属性,特征集合表示一系列特征。

一个完整的GeoJSON数据结构总是一个(JSON术语里的)对象。在GeoJSON里,对象由名/值对--也称作成员的集合组成。对每个成员来说,名字总是字符串。成员的值要么是字符串、数字、对象、数组,要么是下面文本常量中的一个:"true","false"和"null"。数组是由值是上面所说的元素组成。


3.TIFF:

标签图像文件格式(Tagged Image File Format,简写为TIFF) 是一种主要用来存储包括照片和艺术图在内的图像的文件格式。它最初由 Aldus公司与微软公司一起为PostScript打印开发。


TIFF影像数据


4.DEM:

数字高程模型(Digital Elevation Model),简称DEM,是通过有限的地形高程数据实现对地面地形的数字化模拟(即地形表面形态的数字化表达),它是用一组有序数值阵列形式表示地面高程的一种实体地面模型,是数字地形模型(Digital Terrain Model,简称DTM)的一个分支,其它各种地形特征值均可由此派生。

一般认为,DTM是描述包括高程在内的各种地貌因子,如坡度、坡向、坡度变化率等因子在内的线性和非线性组合的空间分布,其中DEM是零阶单纯的单项数字地貌模型,其他如坡度、坡向及坡度变化率等地貌特性可在DEM的基础上派生。


DEM数据的灰度展示


5.空间数据库

空间数据库就是专门做这个的,常用的空间数据库有PostgreSQL(PostGIS拓展)、Mysql(MysqlSpatial拓展)、Oracle(OracleSpatial拓展)等

PostgreSQL:在安装该数据库后,需要再安装一个 PostGIS扩展;

MySQL:直接安装就可以,但是功能相对没有PostGIS强大

Oracle:是一个组件,安装时默认安装


(三)空间关系

在GIS中,空间关系可以是由空间实体的几何特性(包括空间物体的地理位置与形状)引起的空间关系,如距离、方位、连通性、相似性等;也可以是由空间实体的几何特性和非几何特性(包括度量属性如高程值、坡度值、气温值等,名称属性如地名、物体名称等)共同引起的空间关系,如空间分布现象的统计相关、空间自相关、空间相互作用、空间依赖等;还有一种是完全由空间实体的非几何属性所导出的空间关系,如由两个城市的人口数的比较所产生的大小关系、时间上的先后关系、等级上的高低关系以及成因上的因果关系等都属于此类关系 。


空间关系示例


四、GIS 中的坐标系


空间参考( Spatial Reference)是 GIS 数据的骨骼框架,能够将我们的数据定位到相应的位置,为地图中的每一点提供准确的坐标。 在同一个地图上显示的地图数据的空间参考必须是一致的,如果两个图层的空间参考不一致,往往会导致两幅地图无法正确拼合,因此开发一个 GIS 系统时,为数据选择正确的空间参考非常重要。

地理坐标系:为球面坐标。参考平面地是椭球面,坐标单位:经纬度;

投影坐标系:为平面坐标。参考平面地是水平面,坐标单位:米、千米等;

地理坐标转换到投影坐标的过程可理解为投影。(投影:将不规则的地球曲面转换为平面)


(一)坐标系三级逼近概念

1.大地水准面(一级逼近)

地球的自然表面有高山也有洼地,是崎岖不平的,我们要使用数学法则来描述他,就必须找到一个相对规则的数学面。大地水准面是地球表面的第一级逼近。假设当海水处于完全静止的平衡状态时,从海平面延伸到所有大陆下部,而与地球重力方向处处正交的一个连续、闭合的曲面,这就是大地水准面。

它是重力等位面,即物体沿该面运动时,重力不做功(如水在这个面上是不会流动的)。因为地球的质量并非在各个点均匀分布,因此重力的方向也会相应发生变化,所以大地水准面的形状是不规则的,如下图:



2.地球椭球体(二级逼近)

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

由定义可以知大地水准面的形状也是不规则的,仍不能用简单的数学公式表示,为了测量成果的计算和制图的需要,人们选用一个同大地水准面相近的可以用数学方法来表达的椭球体来代替,简称地球椭球体,它是一个规则的曲面,是测量和制图的基础,因地球椭球体是人们选定的跟大地水准面很接近的规则的曲面,所以地球椭球体就可以有多个,地球椭球体是用长半轴、短半轴和扁率来表示的。



3.大地基准面(三级逼近)

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

基准面是在特定区域内与地球表面极为吻合的椭球体。椭球体表面上的点与地球表面上的特定位置相匹配, 也就是对椭球体进行定位, 该点也被称作基准面的原点。原点的坐标是固定的,所有其他点由其计算获得。

基准面的坐标系原点往往距地心有一定偏移(有的也在地心, 如 WGS1984) , 如西安 80 的基准面和北京54 的基准面. 因为椭球体通过定位以便能更好的拟合不同的地区, 所以同一个椭球体可以拟合好几个基准面. 因为原点不同, 所以不同的基准面上, 同一个点的坐标是不相同的, 这点我们应该清楚. 下面以华盛顿州贝灵厄姆市为例来说明。使用 NAD27、 NAD83 和 WGS84 以十进制为单位比较贝灵厄姆的坐标。显而易见,NAD83 和 WGS84 表示的坐标几乎相同,但 NAD27 表示的坐标则大不相同,这是因为所使用的基准面和旋转椭球体对地球基本形状的表示方式不同。



3 个不同基准面时华盛顿州贝灵厄姆市的地理坐标


根据原点位置和区域吻合度,有以下两类基准面:

地心基准面:由卫星数据得到,使用地球的质心作为原点,使用最广泛的是 WGS 1984。

区域基准面:特定区域内与地球表面吻合,大地原点是参考椭球与大地水准面相切的点,例如Beijing54、Xian80。我们通常称谓的Beijing54、Xian80坐标系实际上指的是我国的两个大地基准面。    

我们通常说的参心大地坐标系和地心大地坐标系的区别就在于此。 

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

地心大地坐标系:指经过定位与定向后,地球椭球的中心与地球质心重合。如CGCS2000、WGS84。


(二)地理坐标系

地理坐标系也可称为真实世界的坐标系,是用于确定地物在地球上位置的坐标系,它用经纬度来表示地物的位置,经度和纬度是从地心到地球表面上某点的测量角,通常以度或百分度为单位来测量该角度。下图将地球显示为具有经度和纬度值的地球。



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



(三)投影坐标系

地图投影:简单的说地图投影就是把地球表面的任意点,利用一定数学法则,转换到地图平面上的理论和方法。

墨卡托:墨卡托投影(Mercator Projection),又名“等角正轴圆柱投影”,荷兰地图学家墨卡托(Mercator)在1569年拟定,假设地球被围在一个中空的圆柱里,其赤道与圆柱相接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,这就是一幅标准纬线为零度(即赤道)的“墨卡托投影”绘制出的世界地图。

墨卡托投影以整个世界范围,赤道作为标准纬线,本初子午线作为中央经线,两者交点为坐标原点,向东向北为正,向西向南为负。南北极在地图的正下、上方,而东西方向处于地图的正右、左。

基于椭球面与球面的墨卡托投影均没有角度变形,由每一点向各方向的长度比相等(比例因子为常数),因此具有沿直线方位不变的特点,这样航海者只要根据直线与子午线之间的夹角即可在图上确定航线,因此航海图几乎清一色采用墨卡托投影,但在陆域制图中很少采用,因为长度和面积变形明显。

墨卡托的特点:

等角投影保证了对象的形状不变

等角保证了方向和相互位置不变

圆柱特性,保证了经度、纬度都是平行的线直线,并且相互垂直;经线间距相同,纬度从标准纬线(赤道或者纬度)到两极逐渐增大

面积变形巨大(如格陵兰岛变大很多倍)

这里给出百度百科的地址——墨卡托投影,以及墨卡托投影的效果图。



通用横轴墨卡托

UTM投影是横轴等角割圆柱投影。此投影系统是美国编制世界各地军用地图和地球资源卫星像片所采用的投影系统.

UTM投影全称为“通用横轴墨卡托投影”UNIVERSALTRANSVERSEMERCATOLPROJECTION,是一种“等角横轴割圆柱投影”,椭圆柱割地球于南纬80度、北纬84度两条等高圈,投影后两条相割的经线上没有变形,而中央经线上长度比0.9996。UTM投影是为了全球战争需要创建的,美国于1948年完成这种通用投影系统的计算。与高斯-克吕格投影相似,该投影角度没有变形,中央经线为直线,且为投影的对称轴,中央经线的比例因子取0.9996是为了保证离中央经线左右约330km处有两条不失真的标准经线。

高斯-克吕格

在采用分带的投影坐标系统中,我们最常用的是高斯-克吕格投影,它是由德国数学家、物理学家、天文学家高斯(Carl Friedrich Gauss,1777—1855)于十九世纪二十年代拟定,后经德国大地测量学家克吕格(Johannes Kruger,1857~1928)于1912年对投影公式加以补充,故称为高斯-克吕格投影。它是横轴墨卡托投影的一个变种,高斯-克吕格只是它通俗的名称,比较专业的名称叫做横轴等角切椭圆柱投影。

设想用一个圆柱横切于球面上投影带的中央经线,按照投影带中央经线投影为直线且长度不变和赤道投影为直线的条件,将中央经线两侧一定经差范围内的球面正形投影于圆柱面。然后将圆柱面沿过南北极的母线剪开展平,即获高斯—克吕格投影平面。高斯—克吕格投影后,除中央经线和赤道为直线外,其他经线均为对称于中央经线的曲线。高斯-克吕格投影没有角度变形,在长度和面积上变形也很小,中央经线无变形,自中央经线向投影带边缘,变形逐渐增加,变形最大处在投影带内赤道的两端。下图是高斯—克吕格投影方式示意图。

在我国,1:1万比例尺地形图采用高斯-克吕格3度分带投影坐标,而1:2.5万—1:50万比例尺的地形图采用的是6度分带。一般,在我国标准地形图上,X坐标的前两位代表所在分度带带号,其余的表示X坐标,通常带号的字体要比坐标的字体大。

Web 墨卡托

Web 墨卡托投影在 2005 年发布的 Google 地图中首次使用,考虑到相互之间的平台兼容,随后跟进的微软 Bing Maps、在线地图服务公司 Mapquest Maps、以及雅虎的 Yahoo Maps 纷纷采用了。ESRI 称其为“WGS 1984 Web 墨卡托辅助球投影”, EPSG称其为“公共可视化伪墨卡托投影”。

Web 墨卡托投影采用基于椭球面的球面墨卡托投影公式(相当于椭球面墨卡托投影近似公式)就是把地球椭球体换成圆球

Web 墨卡托的特点同上面的墨卡托,现在在 Web 端大量使用。可以参考——为什么使用 Web墨卡托

投影坐标系是基于地理坐标系的,它使用基于 X, Y 值的坐标系统来描述地球上某个点所处的位置,可以这样认为投影坐标系=地理坐标系(如:北京 54、西安 80、 WGS84)+投影方法(如:高斯-克吕格、 Lambert投影、 Mercator 投影)+线性单位。下图来自 ArcGIS 说明了投影坐标系的组成:(WGS84坐标系投影.png  等几个比较)


(四)坐标系转换

分两种转换:(可以直接在ArcGIS里面展示没有投影的数据,切换不同的投影)

同一个基准面的转换

对于同一基准面,我们可以肯定一点就是同一位置经纬度坐标是一样的,而不同的就是计算成平面坐标的时候可能有所不同,因为算法不一样,在这里我只是将经纬度坐标转成平面的坐标。

例如:坐标系是西安80的地理坐标系没有投影,转换为Xian1980_3_Degree_GK_Zone_34(3度带 34分带)的投影坐标系下的坐标,这个就是经纬度转平面坐标,可以互相转换。

不同基准面的转换

地球上同一位置的坐标在不同的基准面上是不一样的,而基准面是构成坐标系的一个部分,因为基准面在定位的时候牵扯到了相对地心的平移或旋转等,所以对于这样的转换我们无法直接进行,需要一个转换参数,而这些参数也是基于不同的模型的,常用的有三参数和 7 参数, 三参数是比较简单的也是比较容易理解的,三参数是在两个基准面之间进行了 X, Y, Z 轴的平移,如果知道了这三个平移的参数 外加个基准面上的点,那么另外一个点的坐标就是,对于 7 参数,我们知道了平移三参数 旋转三参数 以及比例因子 外加一个基准面上的坐标就可按照下面的公式求出另外一个基准面上的坐标

北京54全国80及WGS84坐标系的相互转换

这三个坐标系统是当前国内较为常用的,它们均采用不同的椭球基准。其中北京54坐标系,属参心坐标系,大地原点在苏联的普而科沃,长轴6378245m,短轴6356863,扁率1/298.3;西安80坐标系,属参心坐标系,大地原点在陕西省径阳县永乐镇,长轴6378140m,短轴6356755,扁率1/298.25722101;WGS84坐标系为地心坐标系,长轴6378137.000m,短轴6356752.314,扁率1/298.257223563。由于采用不一样的椭球基准,所以转换是不严密的。全国各个地方的转换参数也是不一致的。对于这样的转换一般选用七参数法,即X平移,Y平移,Z平移,X旋转,Y旋转,Z旋转,尺度变化K。如果区域范围不大,最远点间的距离小于30Km(经验值),这可以用三参数,即X平移,Y平移,Z平移,而将X旋转,Y旋转,Z旋转,尺度变化K视为0,所以三参数只是七参数的一种特例。要求得七参数就需要在一个地区至少3个重合点(即为在两坐标系中坐标均为已知的点,采用布尔莎模型进行求解。一般我们将GPS测量的WGS84坐标(X84,Y84,Z84)通过空间转换模型,将其转换为地方坐标系的空间直角坐标例如北京54(X54,Y54,Z54)。其布尔莎7参数转换模型为



WKID、EPSG、SRID、WKD:大部分都是相同的,也有一些个别的是独有的;

平时常用的地理坐标系、投影坐标系都是一样的

Geographic Coordinate System 地理坐标

4214  GCS_Beijing_1954 

4326 GCS_WGS_1984 

4490 GCS_China_Geodetic_Coordinate_System_2000 

4555 GCS_New_Beijing 

4610 GCS_Xian_1980 


五、GIS 服务介绍


说到服务就不得不介绍OGC标准:

OGC全称Open Geospatial Consortium,自称是一个非盈利的、国际化的、自愿协商的标准化组织,它的主要目的就是制定与空间信息、基于位置服务相关的标准。这些标准就是OGC的“产品”,而这些标准的用处就在于使不同厂商、不同产品之间可以通过统一的接口进行互操作。

在GIS领域,OGC已经是一个比较“官方”的标准化机构了,它不但包括了ESRI、Google、Oracle等业界强势企业作为其成员,同时还和W3C、ISO、IEEE等协会或组织结成合作伙伴关系。因此,OGC的标准虽然并不带有强制性,但是因为其背景和历史的原因,它所制定的标准天然地具有一定的权威性。

所以,我们也可以看到,很多国内的部门或行业要进行地理空间信息的共享或发布时,言必称OGC标准,就和这个原因有关。但是,事实上我们对OGC和OGC标准并不需要盲目崇拜和迷信,从RESTful服务规范的缺失、KML的空降等可以看出来,OGC还是有一些缺失和不足的地方。

OGC的标准基本上就是OGC所有的成果,而所谓的标准就是一些接口或编码的技术文档。不同的厂商、各种GIS产品都可以对照这些文档来定义开放服务的接口、空间数据存储的编码、空间操作的方法等。

以下是OGC的一些标准


OGC标准概览


下面是介绍一些目前常用的地图服务

(一)WMS (Web Map Service)

Web 地图服务(WMS)能够根据用户的请求返回相应的地图(包括PNG,GIF,JPEG等栅格形式或者是SVG和WEB CGM等矢量形式)。

WMS支持网络协议HTTP,所支持的操作是由URL定义的。

有三个重要操作GetCapabilities,GetMap,GetFeatureinfo。

GetCapabilities(能力、功能)返回服务中要素类及支持的操作;

GetMap返回一个地图影像;

GetFeatureinfo返回显示在地图上的某些特殊要素的信息(多个图层,则各个图层的信息都可以获取到)。

还有一些其它操作如DescribeLayer,GetLegendGraphic,GetStyles,SetSytles。

事实上用传统的观点来解释,GetMap获得的就是在桌面程序中画在控件上的里的结果,是数据的表现。GetFeatureInfo更容易理解,它和几乎所有的桌面程序上都用的Info按钮功能相同,都是用来获得屏幕坐标某处的信息,GetFeatureInfo中的参数是屏幕坐标、当前视图范围等,在一定程度上也方便了客户端的编写。GetFeatureInfo可以同时返回多个图层中的要素信息,这一点和ArcGIS Desktop等也都是相同的。WMS还包括一些GetLegend之类的返回图例信息的请求,也是完全按照桌面既有的标准定义的。

通过在百度地图开发者中心测试(开发文档-地图编辑器),可以编辑任意的样式,这样的服务是动态的,是利用GetStyles、SetSytles来改变的;


WMS服务


(二)WMTS (Web Map Tile Service)

WMTS,切片地图Web服务(Web Map Tile Service)。WMTS标准定义了一些操作,这些操作允许用户访问切片地图。WMTS可能是OGC首个支持RESTful访问的服务标准。

WMTS提供了一种采用预定义图块方法发布数字地图服务的标准化解决方案。WMTS弥补了WMS不能提供分块地图的不足。WMS针对提供可定制地图的服务,是一个动态数据或用户定制地图(需结合SLD标准)的理想解决办法。WMTS牺牲了提供定制地图的灵活性,代之以通过提供静态数据(基础地图)来增强伸缩性,这些静态数据的范围框和比例尺被限定在各个图块内。这些固定的图块集使得对WMTS服务的实现可以使用一个仅简单返回已有文件的Web服务器即可,同时使得可以利用一些标准的诸如分布式缓存的网络机制实现伸缩性

WMTS瓦片算法


(三)WFS (Web Feature Service)

Web 要素服务(WFS)支持对地理要素的插入,更新,删除,检索和发现服务。该服务根据HTTP客户请求返回GML数据。

其基础接口是:GetCapabilities,DescribeFeatureType,GetFeature

GetCapabilities同上。

DescribeFeatureType返回要素结构,以便客户端进行查询和其他操作。

GetFeature可根据查询要求返回一个符合GML规范的数据文档。GetFeature是最重要的接口。

其它接口如Transaction 它不仅能提供要素读取,同时支持要素在线编辑和事务处理。

WFS对应于常见桌面程序中的条件查询功能,WFS通过OGC Filter构造查询条件,支持基于空间几何关系的查询,基于属性域的查询,当然还包括基于空间关系和属性域的共同查询。在Web上,WFS的请求不是以SQL实现的,而是通过Filter XML来实现,可扩展性更强。WFS所返回的是查询的结果集,从某种程度上说,区别于WMS的“数据的表现”,WFS的结果集是由完整的Schema定义和约束的结果集,以GML为载体。这个结果集,类似于桌面程序查询结果的数据表。


(四)WCS (Web Coverage Service)

Web栅格服务(WCS):提供的是包含了地理位置信息或属性的空间栅格图层,而不是静态地图的访问。根据HTTP客户端要求发送相应数据,包括影像,多光谱影像和其它科学数据.

有二个重要操作GetCapabilities,GetCoverage

GetCapabilities返回一个描述服务和XML文档,从中可获取覆盖的数据集合。

GetCoverage是在GetCapabilities确定查询方案和需要获取的数据之后执行,返回覆盖数据。

还有可选操作DescribeCoverageType。

WCS对应基于栅格数据的功能,与WMS基于矢量数据的特点相对应。


(五)瓦片地图

地图数据通常体量较大,需要充足的带宽和数据渲染能力。瓦片地图诞生以前,地图多在局域网的桌面软件中使用。互联网的发展,催生了通过浏览器使用地图的需求,于是在1999年,出现了WMS(Web Map Service)这样的解决方案。在浏览器这一端,没有地图的概念,但浏览器天生就是为了显示文本和图片。WMS的设计是,在服务器端把地图渲染成图片,浏览器端显示地图图片。地图图片大小根据浏览器视窗大小来定。

这大大推进了互联网地图的进程。问题是,WMS根据浏览器视窗大小每次生成一大张图片,对于后端渲染和网络传输都是挑战,效率低下。紧接着就有了WMS-C(Cached)的思想,通过缓存地图瓦片提高效率。在工程实践方面更胜一筹的Google成为这一思想的最佳实践者。2005年,Google地图上线,通过高效的瓦片地图技术,让全球用户轻而易举的享受到了地图的福利。 Google地图采用的Web Mecator投影和瓦片分级切割方案,也成为目前互联网地图事实上的标准。紧接着,Google地图又新增了路网服务、实时路况、街景地图和Google地球,互联网地图的蓬勃发展就此开始。

原理:

使用互联网地图时,我们看到的是一张铺满整个屏幕的大的地图图片。实际上,这张大的图片是多个尺寸相同(通常是256*256像素)的小图片按照既定规则无缝拼接而成的,这些小图片就是瓦片。瓦片按照如下图所示的金字塔结构组织,每张瓦片都可通过级别、行列号唯一标记。在平移地图、缩放地图时,浏览器根据金字塔规则,计算出所需的瓦片,从瓦片服务器获取并拼接。

瓦片是静态的图片,可预先生成,通过缓存和CDN技术,瓦片服务器可提供高效的瓦片读取服务。此外,浏览器并行获取和显示多张小图片,比获取和显示一张大图片要高效的多。显示地图变成和显示图片一样简单,这也是互联网地图能够承载亿级规模用户的原因。


(六)矢量瓦片(MVT)

矢量切片(VT,Vector tiles),之所以也叫 MVT 是因为矢量切片是MapBox定义的一种开放的矢量地图标准,现在已经成为OGC的标准之一。

矢量切片的有优点:

数据在客户端渲染,而不是在服务器端。这样允许不同的地图应用程序使用不同样式渲染同一个地图,而不是在服务器进行预先的配置;

矢量切片的大小通常比瓦片图小,这可以使得数据传输得更快以及使用更低的带宽;

适配客户端屏幕,根据屏幕解析度进行高精度矢量渲染

主要支持的数据格式如下表:




对于怎么发布矢量切片,有几种不同的方式:

GeoServer 发布矢量切片

ArcGIS 发布矢量切片

基于PostGIS 实现矢量切片(配合自己编码实现)


六、GIS厂商介绍


(一)开源平台

1.GRASS GIS

GRASS GIS (Geographic Resources Analysis Support System)是开源代码的地理资源分析支持系统,可用于处理栅格、拓扑矢量、影像和图表数据;优势尤其在于选择分析、图像处理、数字地形操作和统计数据。 GRASS 最早是由美国陆军工程兵团作为土地管理和环境规划的工具。在GPL下发布,可以在多个平台上运行,包括Mac OS X、Windows和Linux。用户可以通过图形用户界面使用该软件功能;也可以通过改进直接使用它的模块。

GRASS 6开始采用新的拓扑 2D/3D 矢量引擎并支持矢量网络分析。该系统可以胜任3D矢量图形数据和立体像素的可视化,也支持线性参考系统。 

GRASS 是开源地理空间基金会最初的八个软件项目之一。由于它的直观和可靠性,它已经广泛用于不同的领域(学术界、环境咨询公司和政府机构),例NASA、美国国家海洋和大气管理局、美国农业部和美国地质调查局等。


2.QGIS(原称Quantum GIS)

QGIS(原称Quantum GIS)是一个跨平台的桌面GIS软件。它提供数据的显示、编辑和分析功能,可以自动生成地图,并且能够处理地理空间数据,最后形成你期待的地图数据。它于2004年成为地理空间开源基金会的一个孵化项目。

QGIS是以C++、Python, Qt为编程语言的跨平台应用,可以在多种操作系统上运行,包括Mac OS X、Linux、UNIX和Microsoft Windows。

QGIS的最大特点在于界面很友好,熟悉ARCGIS的人都能很快的掌握QGIS的操作,支持WMS并无缝集成POSTGIS(对象-关系型数据库管理系统),几乎完全照搬了GRASS的分析功能,因此其分析功能也很强大。相较于商业GIS,QGIS的文件体积更小,需要的内存和处理能力也更小,因此它可以在旧的硬件上或CPU运算能力被限制的环境下运行。 目前,QGIS被志愿者开发团体持续维护,已被翻译为31种语言,广泛使用在全世界的学术和专业环境中。


3.GeoServer

GeoServer(http://geoserver.org/)是一个符合J2EE规范,且实现了WCS、WMS及WFS规格,支持TransactionWFS(WFS-T),其技术核心是整合了颇负盛名的JavaGISolkit--GeoTools。对于空间信息存储,它支持ESRI Shapefile及PostGIS、Oracle、ArcSDE等空间数据库,输出的GML档案满足GML2.1的要求。由于它是纯Java的,所以更适合于复杂的环境要求,而且由于它的开源,所以开发组织可以基于GeoServer灵活实现特定的目标要求,而这些都是商业GIS组件所缺乏的。

GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。GeoServer是社区开源项目,可以直接通过社区网站下载,详细请查看本文档末的资源表。

GeoServer作为一个纯粹的Java实现,被部署在应用服务器中,简单的如Tomcat等;它的WMS和WFS组件响应来自于浏览器或uDig的请求,访问配置的空间数据库,如PostGIS、OracleSpatial等,产生地图和GML文档传输至客户端。

(GIS包括:数据库、桌面、发布服务、开发空间等一系列的)

Web环境:使用PostGIS+SharpMap/MapWindow6+TileCache+OpenLayers进行开发

桌面环境,使用PostGIS+NetTopologySuite+SharpMap/MapWindow6进行开发


4.MapServer

MapServer是由美国明尼苏达大学和美国太空总署(NASA)开发的一个开源的WebGIS软件。MapServer作为WebGIS解决方案,它是面向对象的,基本配置文件MapFile和MapScript模块的API组织都是基于对象的。MapServer通过支持OGC协会的若干标准,支持分布和互操作。MapServer是基于胖服务器/瘦客户端模式开发的webgiS平台,读取地理数据,并利用GD库绘制好jpg/png/gif格式的图片后再传回客户端浏览器。MapServer支持在Windows、UNIX、Linux等多种平台。MapServer支持OGC的WMS/WFS服务规范。MapsServer本身是由C语言编写的程序,提供了两种开发模式,一种是基于CGI的,另一种是MapScript方式。MapScript支持的语言:PHP,Perl,Python,java,Tcl,C#等。MapServer可以看作是两个独立模块的统称:MapServer CGI模块和MapScript模块。在服务器端可以使用任一模块,编写WebGIS程序。

MapFile文件将各种地图要素组织成具有层次关系的对象系统。数据来源,使用的数据格式,用户交互和对OGC协议的支持也在MapFile中定义。MapFile的语法很简单。MapFile的关键字包括对象名、对象属性(keyword),对象结束标记“END”。

Maplab是基于web的Map文件编辑工具和脚本调试工具,是构建在MapServer上的界面。MapLab有三个主要的模块,MapEdit、MapBrowser及GMapFactory。PHP/MapScript是一个可以让PHP动态地载入的模块,使MapServer可以在PHP环境中使用MapScript的功能,如此使用者可以在PHP的环境中控制MapServer。


(二)商业平台

1.Arcgis

ArcGIS是一款由美国ESRI公司开发的GIS(地理信息系统)软件,它广泛应用于地理信息处理、数据分析、地图制作等领域。ArcGIS提供了一个全面的平台,包括桌面软件、服务器软件、移动端软件等,用于管理、分析、发布和处理地理信息数据。

ArcGIS的主要特点如下:

强大的数据处理和分析能力:ArcGIS提供了多种数据格式,包括矢量数据、栅格数据、点云数据等,并支持多种数据来源,如本地数据源、远程数据源等。ArcGIS还提供了丰富的数据处理和分析工具,可以用于数据转换、数据编辑、空间分析等。

多样化的地图制作和发布方式:ArcGIS提供了多种地图制作和发布方式,包括桌面软件制作、Web地图发布、移动端应用等。用户可以根据需要选择适合自己的方式进行地图制作和发布。

全面的客户端/服务器架构:ArcGIS支持客户端/服务器架构,客户端可以通过ArcMap、ArcPad等软件进行数据编辑、处理和分析,服务器端则可以通过ArcGIS Server、ArcSDE等软件提供数据共享和服务发布。

多种编程语言和平台支持:ArcGIS提供了多种编程语言和平台的API,如ArcObjects、Python、Java等,用户可以根据需要选择适合自己的编程语言和平台进行开发。

社区活跃:ArcGIS拥有庞大的用户社区和开发者社区,用户可以通过社区获得技术支持、解决方案、教程等资源。


2.Mapbox

Mapbox是一家提供地图制作和地理信息服务的公司,成立于2010年。Mapbox的使命是让每个人都可以访问和使用地理信息,其愿景是成为地球上最准确的地图平台。Mapbox提供了一个易于使用的平台,让用户可以创建、定制和分享地图数据,同时提供了一系列地图应用和API接口,可以方便地将地图集成到自己的应用中。


3. 超图-SuperMap

SuperMap系列软件是中国领先的GIS平台软件供应商,主要从事GIS平台软件开发、推广与销售,并提供GIS行业解决方案。SuperMap iDesktopX、iServer、iObjects、iManager等系列软件构建了SuperMap GIS基础软件体系,其中SuperMap iDesktopX是SuperMap GIS桌面地理信息系统软件,SuperMap iServer是SuperMap GIS服务器地理信息系统软件,SuperMap iObjects是SuperMap GIS组件式地理信息系统软件,SuperMap iManager是SuperMap GIS数据管理系统软件。

SuperMap GIS软件已广泛应用于政府、企业、高校、科研等机构,并形成了地图数据生产、不动产、国土、交通、环保、水利、电力、铁路、公安、市政、不动产登记、智慧城市、智慧国土、智慧公安、智慧城管等众多行业的解决方案及服务体系。


好了,以上内容覆盖了GIS系统的数据、坐标系和服务,并介绍了一些开源、商业地图平台厂商,相信大家对地理信息系统的关键知识点已经有了一个基本的了解。


Copyright © 苏州物图科技有限公司 版权所有 备案号:苏ICP备20005933号-1
0.086442s