9299.net
大学生考试网 让学习变简单
当前位置:首页 >> 管理学 >>

第五章 空间数据组织与管理(2)

第五章 空间数据组织与管理(2)


第5章 空间数据组织与管理

四、栅格数据的管理
? 1 栅格数据的组织与存储 ? 2 遥感影像数据库管理 ? 3 海量影像数据库

栅格数据的组织与存储
? 栅格数据的存储可以逐行进行,这与扫描数据的生成相 一致;也可以分块进行,以适用于数据处理中的面状作 业。 ? 栅格数据中,很多像元取相同的值,数据冗余明显。为 了节省存储空间,就须设计栅格数据的压缩结构。 ? 1 全栅格式存储 ? 2 链式编码 ? 3 行程编码 ? 4 块式编码 ? 5 四叉树编码

遥感影像数据库管理
?目前遥感影像数据管理的两种模式

?大型遥感影像数据库的关键技术

遥感影像数据管理模式 1.文件管理方式
文件管理形式 的影像数据

影像数据001

影像数据002

影像数据003

影像数据004

影像数据005

...

大部分GIS 软件和遥感 图像处理软 件都是采用 文件方式来 管理遥感影 像数据

影像数据的文件管理

2.文件-数据库管理方式

文件管理形式 的影像数据

影像信息数据库表 影像名称
影像数据002 影像数据003

块号 011001 011002 011003 021001 021002 …… …… …… …… ……

影像数据001

Image 001
Image 002

影像数据004

影像数据005

...

Image 003 Image 004 Image 005

影像数据的文件+数据库管理 影像数据按照文件方式组织管理,关系数据库管理的是文件的索引

3.关系数据库管理 基于扩展关系数据库的影像数据库管理 是将影像数据存储在二进制变长字段中,然 后应用程序通过数据访问接口来访问数据库 中的影像数据。同时影像数据的元数据信息 业存放在关系数据库的表中,二者可以进行 无缝管理。

大型遥感影像数据库的关键技术
? 1.影像分块技术
– 由于在海量影像数据库中,每次调用和使用的图像数 据只是数据库中的一小部分,如何高效地组织和管理 数据,数据分块是影像数据库的关键。 – 根据遥感影像数据情况 , 选择数据块大小是影像数据存 储管理必须考虑的重要因素。影像块太大或太小都会 影响系统的有效性能。如果影像块太大 ,则可能导致读 取过多的冗余数据 (不在目标范围内的数据 )。若影像 块太小 , 尽管减少了冗余数据 , 但却增加了硬盘寻址和 读写操作的次数 。目前 , 常采用的数据块大小为 256 × 256像素或 512 × 512像素。

? 2.空间索引与影像存取
– 格网索引是最适合的空间索引机制,因为影像 数据库中的数据是按照分块的方式存储的,而 且数据块的划分非常规则并且彼此之间没有重 叠。

3.影像金字塔的建立
? 为了提高海量影像数据的实时缩放显示速度, 快速 获取不同分辨率的影像信息, 需要对原始的数据生 成影像金字塔, 并根据不同的显示要求调用不同分 辨率的影像, 达到快速显示漫游的目的。 ? 影像金字塔是指在统一的空间参照下,根据用户 需要以不同分辨率进行存储与显示,形成分辨率 由粗到细,数据量由小到大的金字塔结构。

?

在进行显示时候,根据当前 用户浏览范围的大小以及显 示设备的分辨率和范围,使 用能满足用户视觉要求的金 字塔层次中最高层的数据层 作为显示数据源,这样在一 定程度上增加数据存储开销 的同时,大大加快了实时显 示速度,满足用户实时、准 时浏览的需要。

顶层

中间层

?

底层

小资料:影像金字塔的建立方式
? 方式一 如果生产的源数据本身就是多分辨率的,则可以直接建立不同 的图像工程数据,自动构建金字塔式的影像数据库 ? 方式二 对于只生产了基础层的影像数据,为了提高调度效率,其上层 可以根据相应的比例尺从下层抽取数据来构建金字塔,这是目前多数 系统所采用的方式。 设影像数据的原始分辨率为r 0 , 影像金字塔倍率为 mi , 则第 i层 的分辨率 ri为: ri= r 0 × m i 假设以原始图像数据作为金字塔的第 0层 , 倍率 m可以是任何大 于 1的整数 , 例如采用 2作为构建金字塔的倍率 , 即每 2 × 2个影像 块合成为 1个上层影像块。如果原始分辨率为 1m, 则第 1层的分辨率 为 2m, 第i层的分辨率为 2 im。

五、空间索引
?对象范围索引 ?格网索引 ?四叉树空间索引 ?R树和R+树空间索引

(一)定义
空间索引就是指依据空间对象的位置和形状 或空间对象之间的某种空间关系按一定的顺序排 列的一种数据结构,其中包含空间对象的概要信 息,如对象的标识、外接矩形及指向空间对象实 体的指针。

(二) 空间索引类型
1.格网型空间索引 : 根据空间实体的最大最小范围,预先排除那些没有 落入检索窗口内的空间实体。 这种方法 没有真正创建真 正的空间索引文 件,而是在空间 对象的数据文件 中增加了最大最 小范围,主要依 靠空间计算进行 判别。
D B 查询窗口

C

A E F

基于实体范围的空间数据检索

2.格网型空间索引 :

基本思想是将研究区域用横竖线条划分 大小相等和不等的格网,记录每一个格 网所包含的空间实体。当用户进行空间 查询时,首先计算出用户查询对象所在 格网,然后再在该网格中快速查询所选 空间实体,这样一来就大大地加速了空 间索引的查询速度。

格网索引

空间索引表
Morton码 7 实体 B

实体索引表
实体 A B C C D D D F F F F F F G Morton 码 25-25 7-7 54-55 60-60 32-33 35-35 38-38 14-15 26-26 37-37 39-39 48-48 50-50 35-35

14
21 20 23 22 29 28 31 30 53 52 55 61 60 63 62

F
F A F

15 25 26

C 54
51
50 39 38 35 34

17
16 5 4 1 0

19
18

A 25
24 13 12 9 8

27
26 15 14 11 10

49
48 37 36 33

57
56 45 44

59
58 47 46 43 42

32
33 35 37

D
D D,G F

B7
6 3 2

F

D32

G

41 40

38
39 48 50

D
F F F

基于Morton码的格网法空间索引

54
55 60

C
C C

3.四叉树空间索引 :

四叉树有两种:线形四叉树和层次四叉树
– 线形四叉树索引:先采用MORTON编码( peano键),然后根据空间对象覆盖的范围进 行四叉树分割。使每个子块中包含单个实体, 然后根据包含每个实体的子块层数或子块大小 ,建立相应的索引。

四叉树空间索引
B G

peano码

边长

实体

5

7

E

13

15

0
4 F 6 12 14

4 2

E D

0

1
1 A 3

1
1 2 1

A
F C B、G

4 8
8
C

0

D

2

15

4.R树和R+树
R树: R树根据地物的最小外包矩形建立,将空间 位置相近的实体的外接矩形重新组织为一个 更大的虚拟矩形。可以直接对空间中占据一 定范围的空间对象进行索引。

A
D

F
G E

B I J L C (a)二层不重叠矩形

K H

特点:虚拟矩 形方向与坐标方 位轴一致,同时 满足以下条件: 包含尽可能多的 空间实体;矩形 间的重叠率尽可 能少;一个空间 实体通常被一个 同级虚拟矩形所 包围。对这些虚 拟的矩形建立空 间索引,它含有 指向所包围的空 间实体的指针。

M
N

A

B

C

D

E

F

G

H

I

J

K

L

M

N

(b)层状结构

R树结构示意图

矩形的数据结构为: RECT(Rectangle-ID,Type,Min-X,Min-Y,Max-X,Max-Y)

R+树

特点:允许虚拟矩形可 以相互重叠,允许一个 空间实体被多个虚拟矩 形包围
C G F D1 D2 A E B D1 C E D2 G A

F

B

R+树结构示意图

六、空间数据库引擎
1996年,ESRI公司与Oracle等数据库开 发商合作,开发出一种能将空间图形数据也 存放到大型关系数据库中管理的产品,将其 定名为“spatial database engine”,简称 SDE,即为“空间数据库引擎”。 就其实质而言,空间数据引擎主要是为 解决存储在关系数据库中的空间数据与应用 程序之间的数据接口问题。

客户应用 ArcSDE客户端 (间接) ArcSDE客户端 (直接)

ArcSDE采用客户端/服务器 模式,ArcSDE客户端查询、 显示、分析和生成数当用户 通过客户端发出一个操作信
TCP/IP

息时,一个请求通过TCP/IP
ArcSDE应用服务器 SQL 命令 SQL 命令 SQL引擎 存储管理

网络发送给ArcSDE服务器, ArcSDE服务器将这个请求解 释为RDBMS可以理解的SQL 请求,RDBMS解释SQL语句, 提取用户所需数据,并将数

数据文件 RDBMS

据返回ArcSDE,由ArcSDE 客户端解释数据,并将生成 的结果提交用户。

服务器 . ArcSDE原理示意图

七、空间数据库查询语言
1 标准查询语言
SQL语言的动词 SQL功能 数据查询 数据定义 数据操纵 数据控制 动词 Select Create, Drop, Alter Insert, Update, Delete Grant, Revoke

标准SQL语言不足之处是只提供简单的数据类型,无法实现对空间数 据及其关系查询。

2 扩展SQL处理空间数据

OGIS提出了一套规范,把二维地理空间ADT (abstract data type, 抽象数据类型)整合到 SQL之中,并且包括了指定拓扑的操作和空间分 析操作,从而形成了扩展的SQL语言

基本函数

SpatialReference()
Envelope() Export() IsEmpty() IsSimple() Boundary()

返回几何体的基本坐标系统
返回包含几何体的最小外接矩形 返回以其它形式表示的几何体 如果几何体是空集则返回真 如果几何体是简单的(即不自相交)则返回真 返回几何体的边界 如果两个几何体的内部和边界在空间上相等,则返回 真 如果几何体内部和边界均不相交,则返回真 如果几何体不相交,则返回真 如果两个面仅仅是边界相交但是内部不相交,则返回 真

拓扑/集合运算符

Equal Disjoint Intersect Touch

Cross Within
Contains

如果一条线和面的内部相交,则返回真 如果给定的几何体的内部不和另一个几何体的外部相 交,则返回真
判断给定的几何体是否包含另外一个给定的几何体

Overlap

如果两个几何体的内部有非空交集,则返回真

空间分析

Distance Buffer

返回两个几何体间最短距离 返回到给定几何体的距离小于或等于指定值 的几何体的点集合 返回几何体的最小闭包 返回两个几何体的交集构成的几何体 返回由两个几何体的并集构成的几何体 返回几何体与给定几何体不相交的部分 返回连个几何体与对方互不相交的部分

ConvexHull Intersection Union Difference SymmDiff

扩展的SQL语言空间查询示例
? ? ? ? ? ? ? ? ? 假如基本表的定义如下: Create Table Country ( Name varchar(30),Cont varchar(30), Pop integer,GDP number,Life-exp float(2),shape polygon); Create Table City(Name varchar(30),Country varchar(30),Pop integer,shape point); Cteate Table River( Name varchar(30),Origin varchar(30), Length number,shape linestring); 例如 查出中国的邻国有哪些? Select A1. Name as“中国的邻国” From Country A1,Country A2 Where Touch(A1.shape,A2.shape)=1AND A2=“中国” 其中谓词Touch是OpenGIS标准定义的拓扑谓词,用来检查两个几何体边界 相邻而不相交。

? 查询:找出River表中所列出的河流流经的国家 ? Select R.Name,C.Name ? From River R,Country C ? Where Cross(R.shape,C.shape)=1

? 注释:cross也是一个拓扑谓词,它常常用于判断 linestring与polygon之间(如本例情况)或一对 linestring之间是否相交。

? 查询:对于river表中列出的河流,在city表中找到距离其最近 的城市。 ? ? ? ? ? ? ? Select C1.Name,R1.Name From City C1,River R1 Where Distance(C1.shape,R1.shape)<ALL( Select Distance(C2.shape,R1.shape) FROM City C2 WHERE C1.Name<>C2.Name )

? 注释:Distance是一个返回实数值的二元运算,它可作用于任 何几何对象的组合上。在本例中有两处使用到这个运算: WHERE子句和子查询中的SELECT子句。

? 查询:长江能为方圆300公里以内的城市供水,列出能 从该河获得供水的城市。
? Select Ci.Name ? FORM City Ci,River R ? Where Overlap(Ci.shape,Buffer(R.shape,300) )=1AND ? R.Name=’长江’ ? 注释:一个几何对象的Buffer是指以该对象为中心并由 buffer运算的参数作为尺寸的几何区域,本例中,查询 指定了Buffer区域的大小。很多GIS应用都采用了 Buffer运算,包括洪水泛滥以及城市与乡村划分法则。

A

河流 B Buffer区域 C

图3-17 河流的Buffer区域以及在该区域内外的点 图3-17给出了Buffer运算的图形表示,从该图可以看出,如果河流发生洪 水城市A和B很可能会受到影响,而城市C不会受到影响。

? 查询:列出country表中每个国家的名字、人口和国土 面积。
? Select C.Name,C.Pop,Area(C.shape)AS “AREA” ? From Country C ? 注释:这条查询语句说明了Area函数的用途,该函数只 适用于Polygon(多边形)和Multipolygon(多个多边 形)这两种几何类型。面积的计算显然取决于数据库所 采用的坐标系。例如,如果Country元组的形状都是以 经纬度形式给出,那么在计算面积之前要做一个中间坐 标系变换。对于Distance和Length两个函数也要注意 类似问题。

复习题
1.遥感影像数据有几种管理模式?什么是影 像金字塔? 2.什么是空间索引?有哪几种类型的空间索 引方式?利用这几种空间索引方式,怎样 建立空间索引? 3、查阅ArcSDE相关资料,了解ArcSDE 4、什么是扩展的SQL语言?根据实例了解扩 展的SQL语言。


推荐相关:
网站首页 | 网站地图
All rights reserved Powered by 大学生考试网 9299.net
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com