1、2 0 0 7 年第9 期测绘通报4 7文章编号:0 4 9 4 0 9 1 l(2 0 0 7)0 9 一0 0 4 7 0 3中图分类号:P 2 0 8文献标识码:B基于A r c S D E 的栅格数据存储与处理申胜利1 一,李华3,刘聚海2(1 中国地质大学(武汉)研究生院,湖北武汉4 3 0 0 7 4;2 国土资源部信息中,心,北京1 0 0 8 1 2;3 国土资源部土地整理中心,北京l o 0 0 3 5)R 嬲t e rD a t aM a n a g 即舱n tw i t hA 姗ES H E NS h e“F H,L IH u a,L I UJ u _ h a i摘要:栅
2、格数据是地理信息一种最直接的表现方式随着应用的不断深入,存储管理的要求越来越高要实现对栅格数据安全、快速、实时、多用户访廿J,采用关系型数船库系统(1)B M s)管理栅格数据是一种有效的解决方法。主要介绍蕈于A I c s D E 的栅格数据硝种存储方式,“发通过A m s D E 获取、址栅格数据的技术实现。关键词:栅格数据;存储;处理;A w s D E一、引言随着G I s 应用的深入,栅格数据在整个G I S 领域的应用越来越广泛。栅格数据具有信息丰富、覆盖面广和经济、方便、快速获取等优点。目前无论是从政府机构,还是公司企业,甚至于普通用户,都希望对栅格数据能够有更加复杂的使用,包括
3、土地和自然资源规戈、洪水分析、经济和社医开发、环境保护和紧急事件管理。另外,许多组织都致力于为它们不断增妊的数据集的存储、管理和分布提供高效的解决方案。同时,他们还面临着各种内部和外部需求,为了获取更高的数据投资回报,将数据提供给更多的机构和用户来访问。传统的栅格数据管理方式都是采用文件,式来进行管理。由于栅格数据并不是仅仪包含罔像数据本身,而且还包含大量的图像元数据信息(如图像类型、摄影日期、摄影比例尺等),栅格图像数据夺身还具有多数据源、多时相等特点,文件管理方式存数据的安全性、并发控制和数据共享等方而都无法应付。A r c s D E 是通过关系型数据库管理系统(D B M s)来存储栅
4、格数据和相关的元数据信息。这种方式不仅具有良好的安全措施和数据恢复机制,还提供对连续的栅格数据的快速访问、支持事务处理和并发控制,有利于多用户的访问与共享。二、基于A r c s D E 的栅格数据存储方式在A r c s D E 中,栅格数据存储为一系列业务表和用户表。在存储栅格数据的数据库表中,每一行都对应着一个完整的栅格数据。1 栅格存储的逻辑方式A n s D E 采用栅格镶嵌图(R a s l e rM a D)和栅格目录(R a s t e rc a 乜l o g)两种方式来存储和管理栅格数据。(1)栅格镶嵌图栅格镶嵌图足一些由两幅或多幅栅格数据拼接而成的栅格数据。如果底层数据(u
5、 n d e r l v i“gd a t a)不改变或没有不合逻辑的栅格重叠时,可以使用这种方式。它比较适合带有标准坐标系的航片或卫片,当以这种方式导人栅格文件的时候,A”s D E 会将它们拼接成一张完整的大地图,但这种方式对各个图幅的要求就非常严格,要实现拼接必须满足几个条件:相邻图幅的相邻边不能有丝毫重叠错位;图幅必须带坐标系等等。这种方式的好处在于可以加快显示的速度,它是显示栅格数据最快的一种方式。存在的问题是如果要更新其中的某一小块区域的图像,就要全部删掉原来的数据,再重新导人一遍全部影像数据,对于几十个G,甚至上百G 的影像来说,这足个巨大的工作量。A”s D E 在存储这种栅格
6、数据时,通常放在业务表中的一个表行里面,也就是数据库表中的一条记录。(2)栅格目录栅格目录可以在不进行栅格拼接的情况下。将多个独寺的栅格数据无缝地显示在一个图层中。A r c s D E 只管存储和为它们维护一个目录。使用这收稿日期:2 0 0 7 0 6 2 0蕹薯番异;篷嚣琶茹掣舞磬箍痞冀高古导藩圣墨崮霆辨!鑫乎至委赘i 嚆搿猩l 摆3 崧臂并筹知国土资源信息化规划。万方数据测绘通报2 0 0 7 年第9 期种方式管理航片就没有栅格嵌套方式的那种问题。如果栅格数据需要频繁更新,或需要保留影像重叠部分的数据时,这种方式比较实用。A r c s D E 在存储这种栅格数据时,是把不同的栅格数据
7、分别放人不同的行,并记录下各栅格数据间的相对格网索引位置,如图1 所示。图1 栅格目录存储方式2 栅格存储的物理方式A r c s D E 对栅格数据的存储采用了分层存储和分块存储两种方式相结合。(1)分层存储为提高栅格数据的显示和提取速度,A r c S D E通过生成金字塔(p v r a m i d),降低数据的分辨率来加速数据的显示。其基本思想就是利用重采样算法自底向上生成金字塔,根据需求直接取其中菜一级作为操作对象,以提高整体效率,建的级越多,越方便查询。但建金宁塔也带来额外空问开销,级数越多数据冗余也越大,如图2 所示。团2 金字塔索引示意图金字塔最底层的数据具有最高的分辨率。通过
8、对原始数据进行重采样来创建金字塔的各层。重采样的方法有三种:三次卷积法、双线性内插法和邻近法,其中三次卷积法精度高且带有边缘增强的效果,但运算量大,双线性内插法的精度和计算量适中,并带有低通滤波效果,边缘受到一定的平滑作用,最邻近法计算量最小,而精度较低,但边缘平滑影响较小。一般根据对栅格数据要求和精度来决定采样哪种算法。(2)分块存储在金字塔的每一级中,每个栅格数据是按图块(t i l e)进行存储的。在将栅格数据存储于数据库中时,不是一行一行的存进去,而是将图幅划分成若干个大小相同的图块,每块大小不能超过1 6K,一般就取1 2 8 1 2 8。划分的顺序是从上到下,从左至右的,分块的好处
9、在于可以减少磁盘I O。3 栅格存储的表模式A r c s D E 用了六个业务表来对栅格数据进行存储和管理。r*t e r c o l u m n 是栅格数据索引表,每个栅格数据的元数据信息都列在这个表里面。m s t e r i d 是每个栅格数据的索引值,在A r c s D E 导人栅格影像时,先要生成该索引值,然后再根据该值去生成其他的表名。如图3 所示,其他的表名如s d e r*一1,s d e b n d l,后面这个l,就是由索引值得来的。s d e r a s 一*是栅格数据信息描述表,记录了浚栅格数据的描述信息。s d e b n d 一*是栅格数据的波段信息表。s d
10、e-b l k 一*是实际存储栅格数据的表,它利用二进制对象(B L O B s)字段来对栅格数据进行存储。l e rc o I u m n图3A w s D E 存储栅格数据的表模式这些表之间的逻辑对应关系如图3 中的黑线所示。每个表都是通过主键和外键与其他的表进行关联。如在r*t e r c o l u m n 中记录了索引值为l 的栅格数据所存储的关联信息在b u i l d t b l 中,字段名为i m 8 9 e,相应地在b u i l d t b l 的i m 8 9 e 字段中查询该项内容,得到5 5。5 5 就是实际的栅格索引值,波段表中与5 5 对应的波段i d 号是8 9
11、,这样就找到了r t e r i d 为1 的索引值对应的栅格数据。三、基于A 瞄D E 的栅格数据获取与处理的实现通过A r c s D E 获取栅格数据主要思路是:首先万方数据2 0 0 7 年第9 期测绘通报4 9计算所获取栅格数据范围对应的金字塔级数,找到了对应的金字塔级数后,再从该级的栅格数据中获取对应范围内的数据,最后读取该数据并存储到内存文件里。1 计算某一范围对应的金字塔级数先计算读取范围与整个栅格数据范围高宽的比例。获取该比例因子后再算出栅格数据的实际尺寸大小,再由该实际尺寸大小与金字塔每一级的范围大小进行比较,一直找到最匹配的级数。实现方式如下:d x s c a k=(s
12、 e e m a x x s e e m i n x)(m e n A U m a x x m e n A】1 m i n x);d Y s c a l e=(s e e m a x v s e e m i“v)(一e n A l l m a x v m e n A u m i n v);“p W i d l h=d X S c a l eom A S i z e c x+0 5;计算实际宽度+p H e i g h t=d Y s c a l e*m A l l s i 髓。y+0 5);计算实际高度计算当前金字塔级数f b r(L O N Gi=1;i m l L e v e l C o
13、u n;i+)d o u b I ed W i d t h=d X S c a l e*s i z e c x:d o u b kd H e i g h t=d Y S c a l e。s i z e o y;i f(d w i d t h a b s(r e c t r i 曲t r e c t 1 e f t)1 O|d H e i 曲a b s(州,b o t t o m I e c t 叩)1 o)b r e a k;匹配到了对应级数,则终止循环退出D w i d t h=(D w 0 R D)(d w i d t h+0 5);。p H e i g h t=(D w O R D)(d
14、 H e i g h t+O 5);l L e v e l=i:2 读取数据A r c s D E 的物理存储是采用分块模式存储的。在得到对应的金字塔级数后,利用s D E 提供的A P I函数查询该级的,在所取范围内的所有图块。如果查询成功,则循环取出每一个图块,然后再逐行的读取该图块的数据。实现方式如下:设置对应级数r c=S E m s c o n s t r a i n t-s e t l e v d(h R a s,l L e v e l);r c=S E r a s c o n s t r a i n t-s e t i n t e r l e a v e(h R a s S E
15、R A S T E R I N T E R L E A V E B I P);开始查询该h R a s 对应的所有T i l e 块r c=S E s t r e a m q“e。y r a s t e r t i l e(s t r e a m,h R a s):r c=s E r a s t 丑e i n f 0 一c r e a t e(t i l e);w h i k(S E S U C C E S S=r c)获取每个块进行处理r c=s E s t r e a m g。t r t e r t i l e(s t r e a m,t i l e);L O N G l P o s R
16、o w=一l,l P o s C o l u m n=一1;r c=s E r 拍t i l e i n f 0 一举t r o w c o l(t i l e,l P 0 s R o w,&l P o s c o l u m n);B Y T E D D i b B i t s=N U L L;L O N Gl L e n g t h=0;s E r a s t i l e i n f 0 一g e t p i x e l _ d a t a(t j l e,(v o i d*)(p D i b B j t s),l L e“g t h);3 去除“黑边”由于图幅足按图块(t i l e)存
17、储的,这里就存在一个问题,一般划分都按1 2 8 1 2 8 的方式,但是一般图幅的长宽都不是1 2 8 的整数倍。图幅的长和宽都除不开1 2 8 怎么办呢?s D E 的策略就是一补零。在图幅的右侧和下侧补上若干零元(R c B:o 0 0 0 0 0),也就是黑点,这样处理过的图幅就可以进行划分了,如图4 所示。这样的策略导致随之而来的问题是每个图幅都有“黑边”,最后要去除这些黑边。图4 图块中的黑边以下是最后去处黑边处理过程的实现方式:将原图片绘制到2 4 色位图中:B i t B l t(d c I m a g e 2 4,O,0,m d w W i d t h,m d w H e i
18、 异h t,d c I m 8 9 e,0,0,s R c c O P Y);创建掩码图像1(基于指定的颜色)C O L O R R E Fo l d b k c o l o r=:S e t B k C o l o r(d c I m a g e 2 4,z R A s T E R M A P c O L O R w H I T E);:B i t B l t(d c T r 蚰s,O,0,m d w W i d t h,m d w H e i 曲t,d c I m 8 9 e 2 4,0,O,s R c c O P Y);:s e t B k c o l o r(d c I m a g e
19、 2 4,R G B(O,0,0);C O L O R R E Fo l d t e x t c o l o r2:S e t T e x t C o l o r(d c I m 8 9 e 2 4,R C B(2 5 5,2 5 5,2 5 5);(下转第5 3 页)万方数据2 0 0 7 年第9 期测绘通报5 3在系统中,成果人库完毕后。图形数据的更新只能由测绘和测绘管理人员来共同完成,房产管理的业务人员只能进行读取和显示,这样。可有效地保证房产测绘成果的权威性。五、结论在吉林市数字房产的开发中,根据吉林市房产状况,总体结构设计如图6 所示。图6 总体结构设计老数据转换子系统完成对原始测绘
20、成果(分幅平面图、分层分户幽)空问数据和属性数据的入库。对新开发的房产测绘项目和需补测的房产测绘项目采用基于G I s 的一体化集成的房产测绘系统,外业采集采用基础测绘子系统,内业分摊计算、成果输出打印等采用项目测绘于系统,成果更新入库采用测绘成果入库子系统。一体化集成的房产测绘系统在吉林市数字房产管理中的应用取得了很好的效果,实现了房产图形信息和房产属性信息的一体化存储,实现了房产测绘对空间数据库的快速入库与更新,大大提高了数据采集更新的速度,保证了空间数据库的现势性和权威性,保证r 房产业务的正常运行。参考文献:1 徐爱俊黄全义,罗年学,等房产勘丈与面积分摊信息系统研究 盯铡绘通报,2 0
21、 0 2,(1 1):1 9 2 1 2 杨平,裴哑波,等,基于c I s 技术的房产测绘系统的设计与实现 J 一t 京测绘,2 0 0 4,(2):1 2 1 5 3 袁智德空间信息产业化现状与趋势 M 北京:科学出版社,2 0 0 4 4 石伟伟数字房产关键技术研究与实践 D 北京:中国科学院地理科学与资源研究所,2 0 0 5 s 张桥平,张友静,许捍卫房产分层分户图管理系统开发模型研究 J 测绘工程,2 0 0 1,1 0(3):3 8 4 0 6 张保钢时空数据模型在城市测绘数据库的应用 J 测绘学报,2 0 0 5。3 4(4)(上接第4 9 页)通过与运算去除指定的颜色:B i
22、t B l t(d c I m 3 9 e 2 4,0,0,m d w W i d t h,m d w H e i g h t,d c T r a n s,O,O,S R C A N D);,台并:s t r e t c h B l l(H D c)h D c,p R e c t D 船t l e f t,p R e c t D e s t j o p,p R e e t D e s t j r i g h t-p R e c t D e s t j l e f t,p R e c t D e s t b o t t o n 卜p R e c t D e s t t o p,d c T 跚8,
23、O,O,m d w w i d I h。m d w H e i g h t,s R c A N D);四、结束语通过数据库来存储海量空间数据,是G I s 应用发展的必然趋势,它实现了属性数据和空问数据的一体化存储,从理论上保证了数据的完整性和数据的共享性,而关系型数据库对栅格数据存储和管理更是将G I s 应用的发展又向前推进了一步。参考文献:1 许捍卫,冯学智空问数据存储机制研究 J 计算机应用研究,2 0 0 3,(2)2 申胜利,李华基于A 工c E n 画n e 的A r c G I s 与A u t o-c A D 数据转接研究 J 测绘通报,2 7,(2)3 王伟,杜道生,熊议江
24、分布式栅格数据库的一体化管理 J ,测绘通报,2 0 0 7,(3),4 苏峰,黄正军G I s 空问数据管理模式探讨 J 计算机仿真,2 0 0 3(8),5 龚健雅,王密,基于扩展关系数据库的遥感影像数据库管理系统的研究与实现 J】测绘信息与工程,2 0 0 2,(5)6 李鲁群,安效嘲,邓敏,面向对象矢量的栅格存储数据结构研究 J 山东科技大学学报(自然科学版),2 0 0 3,(3)7 张剑波,刘丹,吴信才6 T s 中栅格数据存储管理的研究与实现 J 桂林工学院学报,2 0 0 6,(1)8 汤国安,赵牡丹地理信息系统原理 M 北京:科学出版社,2 0 0 0 5 5 6 7 万方数
25、据基于ArcSDE的栅格数据存储与处理基于ArcSDE的栅格数据存储与处理作者:申胜利,李华,刘聚海,SHEN Sheng-li,LI Hua,LIU Ju-hai作者单位:申胜利,SHEN Sheng-li(中国地质大学(武汉)研究生院,湖北,武汉,430074;国土资源部,信息中心,北京,100812),李华,LI Hua(国土资源部,土地整理中心,北京,100035),刘聚海,LIU Ju-hai(国土资源部,信息中心,北京,100812)刊名:测绘通报英文刊名:BULLETIN OF SURVEYING AND MAPPING年,卷(期):2007(9)参考文献(8条)参考文献(8条)
26、1.许捍卫.冯学智 空间数据存储机制研究期刊论文-计算机应用研究 2003(02)2.申胜利.李华 基于ArcEngine的ArcGIS与AutoCAD数据转换研究期刊论文-测绘通报 2007(02)3.王伟.杜道生.熊汉江 分布式栅格数据库的一体化管理期刊论文-测绘通报 2007(03)4.苏峰.黄正军 GIS空间数据管理模式探讨期刊论文-计算机仿真 2003(08)5.龚健雅.王密 基于扩展关系数据库的遥感影像数据库管理系统的研究与实现期刊论文-测绘信息与工程2002(05)6.李鲁群.安效国.邓敏 面向对象矢量的栅格存储数据结构研究期刊论文-山东科技大学学报(自然科学版)2003(03)7.张剑波.刘丹.吴信才 GIS中栅格数据存储管理的研究与实现期刊论文-桂林工学院学报 2006(01)8.汤国安.赵牡丹 地理信息系统原理 2000 本文链接: