GIS影像数据分块处理方法研究_第1页
GIS影像数据分块处理方法研究_第2页
GIS影像数据分块处理方法研究_第3页
GIS影像数据分块处理方法研究_第4页
GIS影像数据分块处理方法研究_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

GIS影像数据分块处理方法研究张祖宇

(广西第二测绘院)【摘要】为了解决随着遥感技术的飞速发展产生的海量数据图像,在GIS系统建立后在计算机显示时,查询速度过慢的问题。结合当前计算机软件和硬件的技术对其原因进行了深入分析,并针对影响显示速度的图像漫游和邻域处理等关键问题提出了解决思路和办法。

【关键词】GIS图像显示海量影像数据一、概述

随着卫星遥感和航空摄影技术的发展,通过遥感获得的地理信息越来越多,特别是小卫星高分辨率遥感图像的商业化,遥感影像成为地理信息系统一个非常重要的信息源,而他所面临的数据量也越来越大,我们称之为海量数据。例如,美国USGS生产的1:200万数字制图数据库成果更新需制成一张光盘,而美国全国1:10万水系和交通数据,全套则达14张光盘。我国已建成了覆盖全国范围的1:100万基础地理信息数据库的数据量近300MB,1:25万基础地理信息数据库的数据量为8GB,全国七大江河流域的1m分辨率的DOM数据量达308GB,1:5万数字高程数据达150GB以上。与之对应的遥感影像的数据量就更大,如仅福建省的30m*30m分辨率的24位BMP格式的遥感影像就有700MB之多,若为1m*1m分辨率,数据量将是630GB。目前,海量数据的提法在GIS界已被广泛接受。造成海量数据的原因主要有:①GIS应用范围的扩大造成数据采集区域的扩大,从而造成GIS数据量的大幅增加;②冗余数据的存在;③问题研究的动态性使GIS必须获取多时相、多尺度的空间数据;④多数据库的连接和耦合使得原本非海量的数据变成海量。

对于遥感图象处理系统来说,原始遥感图象、中间结果图象、最终结果图象的显示查寻是了解原始图象质量、结果图象质量以及确定图象处理方法有效性的最直观、最重要的手段之一,而海量遥感图象的显示必然涉及到图象显示的速度问题,由于计算机内存的增加速度永远也赶不上数据量的增长速度,使得计算机将海量遥感图象的全部数据读入内存是不现实的,即使计算机的内存大到能够将一幅海量遥感图象的全部数据读入内存,但是内存肯定也无法大到可以同时打开若干幅海量遥感图象的地步(若利用WindowsAPI的VirtualAlloc函数的虚拟地址保留或提交功能来实现同时打开多幅海量遥感图象,也会由于图象显示切换时的内存与计算机硬盘之间的大量数据交换而严重影响图象显示的速度);另一方面,目前计算机普遍拥有128M或更大的内存,若不科学地利用,无疑是资源的严重浪费,因此如何科学地利用好计算机已有的内存以及硬盘与内存之间的数据交换是解决图象显示速度的关键。因此为了能够对海量遥感图象进行快速显示操作以及解决计算机硬件的限制,必须在软件算法技术上进行研究改进。

分片处理的主要目的就是将大数据量的遥感影像分成相对数据量较小的多块数据,再将这些数据块进行编号,建立索引。这样,查询数据时,无须逐行读取,只要选择相应的数据块,就可以快速查询到所需数据。

本文研究的主要内容就是如何将海量数据进行分片,建立索引。研究首先设定分片范围,再建立索引表。查询过程中,将查询目标与索引表进行比较,得到索引编号,查询到分片数据。这样一来,避免了逐行读取数据,节省了大量时间。

二、海量数据分块处理方法基本思路

2.1海量数据分块处理方法过程分析

2.1.1

图1图象横向宽度对显示速度的影响基于上述分析,结合中间图象技术,在建立中间数据时,并不是以行或以列作为一个记录的,而是将整个图象划分为一个个的块(块的大小要确保能够被一次性地读入),如图2所示的虚线网格,由图2可知,只要保证块的尺寸大于显示区域的尺寸,就能保证显示时,最坏的情况是显示区域最多涉及4块,也就是说,最多只需要4次定位和4次的数据读取就可以将此显示区域的数据全部获得。同时由于目前计算机显示器的分辨率基本上是在1280×1024以下,也就是说,即使是三色合成的图象,一个显示区对应的数据量也只有l280×l024×3Byte,这对于目前计算机的内存来说,是不成问题的。对于分块大小的确定,一个总的原则是块不能小于显示区域的大小,因为若块小于显示区域时,一次显示必涉及到更多的块,这就需要多次的定位和数据的读取,当然由于计算机内存的限制,块也不能太大。图2图象的分块2.1.2

图3中间图象处理流程在此次研究过程中,采用的中间图象方法是:先存为自定义格式的数据文件,该文件为数据集合,不能显示图象内容,只能供给查询需要。然后将这种格式的文件转换成可识别的图象文件格式。这样,通过建立DIB,可以生成一个给定的窗口,在此窗口中就能显示图象了。

2.1.3

图4图像文件分块方法示意图图5图像文件检索方法示意图每个图像块都如图4中11块那样具有特定坐标系中的(xmin,ymin)及(xmax,ymax)两个点决定本块在图像中的位置,而每个块合起来组成一个文件,因而可以根据这4个坐标与每个文件块的一一对应关系建立一个有关这些文件的空间索引。在数据库中相应的5个字段建立这种空间索引数据库。

如图5所示,在确知了用户访问区域(x1,y1,x2,y2)之后,就可以从数据库中找到相应的影像文件。查找时可如图3-3-2所示,利用4个坐标值来判断,每判断一次,就除去了4个方向中某个与选择区域无关的文件,这4个判别式分别为xmax>x1(左边),ymax>y1(上边),xmin<x2(右边),ymin<y2(下边)。这样,就可以查找到仅与用户查找区域有关的部分了。

三、海量影象数据分块处理算法设计

3.1算法的总体流程(思想)

首先,我们输入一副图像,输入宽度Y,高度X。然后得到该图像的矩阵Pix[x][y]。接下来进行分块,首先设定分块大小,长度Width和高度Height。for(K=0;K<x/Height;K++);

for(L=0;L<y/Width;L++),

我们得到每片的范围,再读取像元,

for(i=0;K*Height<i<(K+1)*Height;i++);

for(j=0;L*Width<j<(L+1)*Width;j++)

每读取一段,我们存放到新的文件中。循环结束,我们得到一个新的矩阵——

(res+n)=Pix[i][j];这个新的文件包含的数据便是分块后的数据。

分块好的数据就可以采用分块查找。查找过程分为以下两步进行:

(1)首先查找索引表,以便确定被查找元素所在的子表。由于索引表数据域中的数据是有序的,因此可以采用对分查找。

(2)然后在相应的子表中用顺序查找法进行具体的查找。

在分块查找中,为了找到被查元素x所在的子表,需要对分查找索引表,在最坏的情况下需要查找log2(m+1)次。为了在相应的子表中用顺序查找法查找元素x,在最坏的情况下需要查找n/m(假设各子表长度相等)次;而在平均情况下需要查找n/(2m)。因此,分块查找的工作量为:在最坏的情况下需要查找log2(m+1)+n/m次,平均情况下大约需要查找log2(m+1)+n/(2m)次。显然,当m=n时,线形表为有序表,分块查找即为对分查找。当m=1时,线形表为一般的无序表,分块查找即为顺序查找。

3.2算法框图(实现流程)图6海量数据分块处理算法流程框图四、结论及进一步的研究方向

4.1结论

随着遥感技术的不断发展,遥感图像的数据量将不断快速增加,海量遥感图像的应用领域将越来越广,针对海量遥感图像的显示,通过采用中间图像技术、栅格分块技术、高速缓存技术以及中间图像序列技术,使得在充分利用计算机软硬件资源基础上很好地解决了海量遥感图像在进行处理操作中速度较慢的关键性问题,并且系统开发过程始终伴随着实际应用,从而在实用性方面得到了良好验证。

4.2进一步的研究方向

4.2.1高速缓存技术

对于图象处理系统来说,图象漫游功能是必备的,然而漫游功能是否随心应手则决定了图象处理系统质量的优劣,由于应用对象是海量遥感图象,且大部分的数据总是在大容量存储介质——硬盘当中,虽然通过分块技术减少了图象显示时的定位和读取的次数,已在一定程度上克服了图象漫游过程中的速度过慢问题,但如果每次的漫游操作均需从硬盘读取,则还是会影响图象漫游的响应速度。

为了进一步提高图象漫游的速度,受到计算机技术中,广泛应用的Cache技术的启发,在中间图象文件和显示缓存中间,再开辟一块适当大小的内存缓冲——高速缓存,在该缓冲区中存储从中间图象文件读取的图象数据,然后再将此缓存中显示的相应部分拷贝到显示缓冲区。采用这种技术的原因是:当此缓冲区的大小大于滚动视图的可见窗体尺寸,则在图象漫游过程中,系统就不必每次都重新从中间图象文件获取显示部分的图象,而只需计算应拷贝的缓冲区的位置,再作一次图象拷贝即可,从而大大提高了图象漫游的速度。

高速缓存的大小直接影响图象漫游的效率,若太小则必然造成频繁地读取中间图象文件,太大又受到计算机内存的限制,而且大数据量的读入也会造成速度的延迟,为此高速缓存选取的是显示区域周围最近的9个分块(如图7所示),这样选择高速缓存大小的另一个原因就是图象处理中漫游功能所使用的很大一部分操作是手帕漫游方式,当手帕的手不放开时,由于漫游的范围最大也就是显示区域的9倍,因此选择适当的分块大小以及显示区域周围最近的9块作为高速缓存,恰好能够实现显示区域周围9倍大小的图象均在高速缓存当中,从而保证了手帕漫游操作时,只要手不放开,所有漫游操作都不需与中间图象文件打交道。

图7块与高速缓存4.2.2遥感影像的金字塔结构

为了实现影像数据库的实时缩放显示、快速获得多尺度的影像信息,需要对各种尺度的影像信息进行有效的组织管理。影像数据的多尺度组织和分块组织是解决上述问题的两个关键技术。影像数据的多尺度组织是用影像金字塔结构来实现的。简单地讲,影像的金字塔结构就是由原始影像数据开始,建立起一系列影像,而各幅影像反映不同尺度下遥感影像的详尽程度。通常原始影像数据反映最详细、最真实的遥感影像,由它逐步生成其他低分辨率的影像,以反映原始影像在各尺度下的概貌。这样,在浏览影像数据时,就可以根据当前用户所需的分辨率,提取相应尺度金字塔层的数据。从而实现影像数据的快速浏览。

图8单波段图像的金字塔结构示意由于遥感影像、航空影像等图像尺寸巨大,一般而言,其行列数远远超出了计算机屏幕显示范围。因此,在影像浏览时,屏幕可见区域显示的只是影像中的一个小矩形区域。这一问题可以用影像数据的分块组织技术来解决,这同时也利于图像的压缩处理,从而高效地完成影像存储,并减少图像读取时间。图像的块可以与关系数据库的记录进行很好的对应,当数据库记录与影像块一一对应时,就可以利用商用数据库管理海量影像数据。图像块的大小,即图像块的行数和列数,通常取2的幂次方。具体分块时需要考虑以下因素:图像的局部相关程度、压缩算法、图像数据类型、图像块缓冲区的管理算法、用户感兴趣区域的大小、网络的传输单元等。

图9多波段影像数据分块示意参考文献

[1]孙家柄编.遥感原理与应用.武汉大学出版社,2003.2

[2]章孝灿,黄智才,赵元洪编著.遥感数字图像处理[M].杭州:浙江大学出版社,1997

[3]郭德方.遥感图像的计算机处理和模式识别.北京:电子工业出版社,1987

[

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论