一些常用的的遥感专业知识

目录

一、技术栈、系统

MinIO

  • 是什么?

    • 开源的对象高性能存储服务,适合于存储大容量非结构化的数据。

  • 怎么用

    1. Object 存储到MinIO的基本对象。如文件,字节流等

    2. Bucket 存储Object的逻辑空间,每个Bucket之间的数据时相互隔离的。对于用户而言,相当于存放文件的顶层文件夹。

    3. Drive 存储Object的磁盘。在MinIO启动时,以参数的方式传入。

    4. Set 一组Drive的集合。根据集群规模自动划分Set,每个Set中的Drive分布在不同位置。

      • 一个对象存储在一个Set上。

      • 一个集群划分成多个Set。

      • 一个Set包含的Drive数量是固定的,默认由系统根据集群规模自动计算出。

      • 一个Set中的Drive尽可能分布在不同的节点上。

    5. EC 纠删码(Erasure Code),保证高可靠。

      • n 份原始数据,m份编码数据。

      • 任意小于等于m份的数据丢失,以通过剩下的数据还原出来。

  • 为什么用

    • 高性能:Minio 支持一个对象文件可以是任意大小,从几 kb 到最大 5T 不等。

    • 可扩展:不同 Minio 集群可以组成联邦,并形成一个全局的命名空间,并跨越多个数据中心

    • 云原生:容器化、基于 K8S 的编排、多租户支持。

    • SDK 支持:有类似 Java、Python 或 Go 等语言的 sdk 支持。

    • Lambda 计算:Minio 服务器通过其兼容 AWS SNS / SQS 的事件通知服务触发 Lambda 功能。

    • 提供图形化操作界面、功能简单、存储多种后端、Amazon S3 兼容。

    • 支持纠删码:Minio 使用纠删码、Checksum 来防止硬件错误和静默数据污。

MangoDB

  • 是什么?

    • MongoDB是一个基于分布式文件存储 [1] 的数据库。由[C++]语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

    • MongoDB是一个介于[关系数据库]和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似[json]的[bson]格式

  • 怎么用

    • 适合场景

      • 1)网站实时数据处理。它非常适合实时的插入、更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。

      • 2)缓存。由于性能很高,它适合作为信息基础设施的缓存层。在系统重启之后,由它搭建的持久化缓存层可以避免下层的数据源过载。

      • 3)高伸缩性的场景。非常适合由数十或数百台服务器组成的数据库,它的路线图中已经包含对MapReduce引擎的内置支持。

    • 不适用的场景如下:

      • 1)要求高度事务性的系统。

      • 2)传统的商业智能应用。

      • 3)复杂的跨文档(表)级联查询。

  • 为什么用

    • 使用高效的二进制数据存储,包括大型对象(如视频)。

    • 模式自由,采用无模式结构存储。

    • 面向集合存储,容易存储对象类型的数据。

    • 支持查询。MongoDB 支持丰富的查询操作,MongoDB 几乎支持SQL中的大部分查询。

    • 支持完全索引,可以在任意属性上建立索引

Postpresql +PostGis

  • 是什么?

    • postpresql :一种特性非常齐全的自由软件(非商业支持)关系型数据库管理系统

    • postgis(PG): PostGIS是对-[关系型数据库系统]PostgreSQL的一个扩展

  • 怎么用

  • 为什么用

    • postpresql

      • 1.PostgreSQL是完全免费的,它是BSD协议。PostgreSQL数据库将不受其他公司的控制。

      • 2.有众多与PostgreSQl合作的开源软件,还有很多分布式集群软件,例如pgpool,pgcluster,lony,plploxy等。

      • 3.PostgreSQL源代码写得很清楚,可读性比MySQL好。

      • 4.PostgreSQL在SQL执行,存储过程,触发器和索引等方面都比MySQL强

    • postgis

      • 提供额外的计算功能,几何类型、坐标变换、聚集函数等

      • PostGIS提供了一系列的二元谓词(如Contains、Within、Overlaps和Touches)用于检测空间对象之间的空间关系,同时返回布尔值来表征对象之间符合这个关系。

      • PostGIS提供简单的空间分析函数(如Area和Length)同时也提供其他一些具有复杂分析功能的函数

GDAL

  • 是什么?

    • (Geospatial Data Abstraction Library) 开源栅格空间数据转换库,它利用抽象数据模型来表达所支持的各种文件格式。它还有一系列命令行工具来进行数据转换和处理。

    • GDAL支持多种语言环境,大多是配合python使用的。也有JAVA版本的api,但是需要配置GDAL JAVA环境(本质是一个jar包,包含多种包装数据处理方法),

  • 怎么用

    • 在配置好gdal环境(开发环境配置需要window 的gdal,生产环境需要配置linux 的gdal)后,导入maven依赖
      

      建议使用工具类,包装具体的api方法

      具体使用步骤以解析tif文件为例

  • 为什么用

    • 提供对多种栅格数据的支持,包括Arc/Info ASCII Grid(asc),GeoTiff (tiff),Erdas Imagine Images(img),ASCII DEM(dem) 等格式。

    • 使用抽象数据模型(abstract data model)来解析它所支持的数据格式

K8S

  • 是什么?

    • 是一个开源的编排容器的工具

    • kubernetes,简称K8s,是用8代替名字中间的8个字符“ubernete”而成的缩写*

    • 管理应用的全生命周期

  • 怎么用

    • 自动化容器的部署和复制

    • 随时扩展或收缩容器规模

    • 将容器组织成组,并且提供容器间的负载均衡

    • 很容易地升级应用程序容器的新版本

    • 提供容器弹性,如果容器失效就替换它

  • 为什么用

    • k8s可以更快的更新新版本,打包应用

    • 更新的时候可以做到不用中断服务

    • 环境的迁移极其方便,一个配置文件搞定,一次生成,到处运行

Geoserver

本质上是一个提供空间数据访问的服务器

参考:

https://www.cnblogs.com/landyli/articles/15938574.html

简介

GeoServer是一个用于共享地理空间数据的开源服务器。
为交互操作而设计,
它的发布来自于主流空间数据源的符合开放标准的数据。

百科

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

使用

先发布、后访问。
​
可以发布shpfile、tif栅格数据源等多种文件。(具体发布步骤可以在网络上查询到,不再展示)
通过geoserver也可以实现即时预览(openlayer)

下面使用url请求的方式获取图层的示例
​
http://<IP>:9090/geoserver
/<workspace>                            
/wms?service=WMS
&version=1.1.0
&request=GetMap
&layers=geodemo:<title>
&bbox=106.51083333,29.559969905,106.914192195,29.84916667
&width=768
&height=550
&srs=EPSG:4326
&styles=
&format=image/png
​
http://<IP>:9090/geoserver
/<workspace>
/wms?service=WMS
&version=1.1.0
&request=GetMap
&layers=agriculture:<title>
&bbox=119.74857147662664,31.798744090319644,120.01761690422043,32.06239962620872
&width=768
&height=752
&srs=EPSG:4326
&styles=
&format=image%2Fpng
​

Gis

Gis(Geographic Information System)
地理信息系统
经过长达半个世纪的发展,几乎伴随着计算机的全程发展,当前GIS已经成为遥感、测绘、军工等需要使用到地理信息的系统的主流系统。

 

60年代早期,在核武器研究的推动下,计算机硬件的发展导致通用计算机“绘图”的应用。
    1967年,世界上第一个真正投入应用的地理信息系统由联邦林业和农村发展部在加拿大安大略省的渥太华研发。罗杰·汤姆林森博士开发的这个系统被称为加拿大地理信息系统(CGIS ) ,用于存储,分析和利用加拿大土地统计局( CLI,使用的1:50,000比例尺,利用关于土壤、农业、休闲,野生动物、水禽、林业和土地利用的地理信息,以确定加拿大农村的土地能力。)收集的数据,并增设了等级分类因素来进行分析。
    CGIS是“计算机制图”应用的改进版,它提供了覆盖,资料数字化/扫描功能。它支持一个横跨大陆的国家坐标系统,将线编码为具有真实的嵌入拓扑结构的“弧”,并在单独的文件中存储属性和区位信息。由于这一结果,汤姆林森已经成为称为“地理信息系统之父”,尤其是因为他在促进收敛地理数据的空间分析中对覆盖的应用。
    CGIS一直持续到20世纪70年代才完成,但耗时太长,因此在其发展初期,不能与如Intergraph这样的销售各种商业地图应用软件的供应商竞争。CGIS一直使用到20世纪90年代,并在加拿大建立了一个庞大的数字化的土地资源数据库。其能力是大陆范围内的复杂数据分析。CGIS未被应用于商业 。微型计算机硬件的发展使得象ESRI和CARIS那样的供应商成功地兼并了大多数的CGIS特征,并结合了对空间和属性信息的分离的第一种世代方法与对组织的属性数据的第二种世代方法入数据库结构。20世纪80年代和90年代产业成长刺激了应用了GIS的UNIX工作站和个人计算机飞速增长。
    至20世纪末,在各种系统中迅速增长使得其在相关的少量平台已经得到了巩固和规范。并且用户开始提出了在互联网上查看GIS数据的概念,这要求数据的格式和传输标准化。

Open Gis

Open GIS规范是由开放地理信息系统协会(Open GIS Consortium,简称OGC)制定的一系列开放标准和接口。
类似于jdbc、jpa等,本质是一种统一技术规范。
开放式地理信息系统(Open GIS)
    指在计算机和通信环境下,根据行业标准和接口所建立起来的地理信息系统。它不仅使数据能在应用系统内流动,还能在系统间流动。Open GIS是为了使不同的地理信息系统软件之间具有良好的互操作性,以及在异构分布数据库中实现信息共享的途径。
    OpenGIS由美国OGC(OpenGIS协会,Open Geospatial Consortium)提出。目的是促进采用新的技术和商业方式来提高地理信息处理的互操作性;它致力于消除地理信息应用(如地理信息系统,遥感,土地信息系统,自动制图/设施管理(AM/FM)系统)之间以及地理应用与其它信息技术应用之间的藩篱,建立一个无“边界”的、分布的、基于构件的地理数据互操作环境。

Webgis

​持续更新中...

Openlayer

用于开发WebGIS客户端的JavaScript包
    OpenLayers 是一个专为Web GIS 客户端开发提供的JavaScript 类库包,用于实现标准格式发布的地图数据访问。从OpenLayers2.2版本以后,OpenLayers已经将所用到的Prototype.js组件整合到了自身当中,并不断在Prototype.js的基础上完善面向对象的开发,Rico用到地方不多,只是在OpenLayers.Popup.AnchoredBubble类中圆角化DIV。

    OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。

Arcgis

是基于GIS一个开发服务应用,便利性的操作界面,大大缩减了地理信息处理的工时。

二、文件、数据类型

1、kml文件

    一种基于XML 的标记语言,利用XML 语法格式描述地理空间数据(如点、线、面、多边形和模型等),适合网络环境下的地理信息协作与共享。与HTML一样,KML 使用包含名称、属性的标签(tag)来确定显示方式。因此,您可将 GoogleEarth和 Google Maps等可以解析kml文件的工具视为 KML文件浏览器

如图是一个示例kml文件

具体内容如下

2、wms、wmts、tms文件

  • 各自是什么?

    • wms (web map service) 网络地图服务,它是利用具有地理空间位置信息的数据制作地图,其中将地图定义为地理数据的可视化表现,能够根据用户的请求,返回相应的地图,包括PNG、GIF、JPEG等栅格形式,或者SVG或者WEB CGM等矢量形式。WMS支持HTTP协议,所支持的操作是由URL决定的。

    • tms (tile map Servcie)切片地图服务(TMS)定义了一些操作,这些操作允许用户按需访问切片地图,访问速度更快,还支持修改坐标系。WMTS可能是OGC首个支持RESTful访问的服务标准。切片地图服务又叫缓存服务区,地图缓存是使地图和图像服务更快运行的一种非常有效的方法。创建地图缓存时,服务器会在若干个不同的比例级别上绘制整个地图并存储地图图像的副本。然后,服务器可在用户请求使用地图时分发这些图像。对于服务器来说,每次请求使用地图时,返回缓存的图像要比绘制地图快得多。

  • 怎么用

    • 通常是开放的资源定位标志(url),通过访问服务来过去对应的地图数据

  • 为什么用

    • kml

      • 是一种XML描述语言,并且是文本格式,这种格式的文件对于Google Earth程序设计来说有极大的好处

      • 程序员可以通过简单的几行代码读取出地标文件的内部信息,并且还可以通过程序自动生成KML文件

    • wms

      • GIS数据的地理空间视图。

      • WMS通过Internet提供具有基本查询选项的可视化数据。

      • WMS提供基本的缩放、平移和帮助组织以快速渲染速度将GIS数据作为图像提供。

    • tms

      • 切片地图服务由于瓦片图片已经存在,所以该服务实现的功能有限,无法对图层进行一系列操作。

      • 当缓存级别较高时,占用的硬盘存储量较大。

3、tif栅格数据/文件

tif是一种格式

栅格数据

点实体由一个栅格像元来表示;
线实体由一定方向上的栅格像元来表示;
面实体由具有相同属性的相邻栅格像元的块集合来表示。
栅格数据就是将空间分割成有规律的网格,每一个网格称为一个像元,每一个像元的位置由它的行列号定义,栅格行列位置表示的实体位置

4、tile瓦片数据/文件

tile是显示层面的数据

瓦片/切片数据 瓦片地图金字塔模型是一种多分辨率层次模型,在统一的空间参照下,根据用户需要以不同分辨率进行存储与显示,形成分辨率由粗到细、数据量由小到大的金字塔结构。所表示的地理范围不变,金字塔越往底层所表示的地图信息越详细,比例尺越大。

如图是农田版图

5、shape 矢量数据/文件

矢量数据    
shp(shape简写) 矢量数据是利用几何学中的点、线、面及其组合体来表示地理实体空间分布的一种数据组织方式,矢量数据有属性表。一般通过记录坐标的方法来表现地理实体的空间位置。

###

6、图斑

通过图像分割或者矢量图套合,将整个影像划分成若干个小的区域,这样的区域一般叫做图斑或者像斑。
​
常常指tile文件通过可视化形成的斑点图像

如图是使用QGIS打开的tif文件:农田分布

其中每一个独立的多边形被称为图斑

三、结构和规范

结构化数据、非结构化数据、半结构化数据

- 结构化数据指能直接存如关系型数据库的数据,用同一结构表示,例如"txxw"和"成都双流"都能用varchar类型统一表示
​
- 非结构化数据指,需要经过一定处理才能存入数据库。
​
- 半结构化数据是指具有一定结构的文件,例如图片、办公文档。

如图

金字塔模型

首先:
    地图的本质是高分辨率图片。
金字塔模型: 
    针对大容量地图数据(图片、图层),采用分层切片、其中切片又包括栅格切片和矢量切片,通过对地图数据分层,使我们在加载地图时,不需要增加带宽也能及时加载高分辨率图像。
    多分辨率来解释图像的一种有效但概念简单的结构就是影像金字塔。一幅图像的金字塔就是一系列以金字塔形状排列的分辨率逐渐降低的图像集合。金字塔的底部是图像的高分辨率表示,也就是原始图像,而顶部是低分辨率的近似。最底层的分辨率最高,并且数据量最大,随着层数的增加,其分辨率逐渐降低,数据量也按比例减少
    整个地图信息服务系统的数据展现类似一个多层的金字塔

wkb、wkt

参考

https://www.cnblogs.com/qdhotel/p/4887032.html

WKT(well-known text)是一种文本标记语言,该格式由开放地理空间联盟(OGC)制定,用于表示矢量数据中的几何对象,在数据传输与数据库存储时,常用到它的二进制形式,即WKB(well-known binary)。WKT与WKB在GIS中的重要作用在于,他们能利用文本简洁明了的表达矢量空间要素的几何信息,使得几何信息能以字段的形式存储于数据库中。WKT相比WKB更方便人们理解,具有很高的可读性,下图以点线面3种基础矢量数据类型为例,简单说明点构线、线构面的构建关系。WKT中所有的数据类型都以点数据为基础,点坐标的XY值用空格隔开,坐标之间用逗号隔开:

如图示wkb在数据库中的存储

四、基础知识点

大气校正

什么是大气校正
    大气校正是指传感器最终测得的地面目标的总辐射亮度并不是地表真实反射率的反映,其中包含了由大气吸收,尤其是散射作用造成的辐射量误差。大气校正就是消除这些由大气影响所造成的辐射误差,反演地物真实的表面反射率的过程。
大气校正方法
    主要分为两种类型:统计型和物理型。统计型是基于陆地表面变量和遥感数据的相关关系,优点在于容易建立并且可以有效地概括从局部区域获取的数据,例如经验线性定标法,内部平场域法等,另一方面,物理模型遵循遥感系统的物理规律,它们也可以建立因果关系。如果初始的模型不好,通过加入新的知识和信息就可以知道应该在哪部分改进模型。但是建立和学习这些物理模型的过程漫长而曲折。模型是对现实的抽象;所以一个逼真的模型可能非常复杂,包含大量的变量。例如6s模型,Mortran等。而辐射校正指在光学遥感数据获取过程中,产生的一切与辐射有关的误差的校正(包括辐射定标和大气校正)。 

地理坐标系和投影坐标系

是什么
    地理坐标系(Geographic coordinate system)如图一
    和
    投影坐标系(Projectedcoordinate system)。 如图二
    
一、地理坐标系定义:地理坐标系是以椭球体面为参考面,以法线为依据,用经纬度表示地面点在椭球表面的位置的坐标系统
    1、简单点来说,地理坐标系是用经纬度来表示地球表面物体的位置,如下图所示。
    2、不同的地理坐标系的区别就在于用于拟合地球大地水准面的椭球大小和位置有关。
    3、我国常用的地理坐标系有GCS_Beijing_1954,GCS_Xian_1980,CS_WGS_1984,GCS_CN_2000)
    
二、投影坐标系:将球面坐标转为平面的坐标系。
    1、投影坐标系的实质是平面坐标系统,地图单位通常为(米)。投影坐标系=地理坐标系+投影函数算法
    2、投影坐标系通俗来讲就是把地球椭球展平在地图上画出来,既然已经有地理坐标系能够准确表达物体位置了,为啥还需要投影坐标系呢?主要是制图需要,还可以进行长度和面积的量测等。

图一

图二

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值