GIS中的栅格和矢量数据是什么以及何时使用?


47

GIS上下文中的栅格和矢量数据是什么?

一般而言,每种应用程序,流程或分析都适合?(适合!)

有人有传达,对比这两个基本数据表示形式的小巧,简洁,有效的图片吗?

Answers:


34

矢量数据

优点:数据可以以其原始分辨率和形式表示,而无需泛化。图形输出通常在美学上更为令人满意(传统制图表示);由于大多数数据(例如,硬拷贝地图)为矢量形式,因此无需数据转换。保持数据的准确地理位置。允许对拓扑进行有效的编码,结果是需要拓扑信息(例如,邻近性,网络分析)的更高效的操作。

缺点:每个顶点的位置需要显式存储。为了进行有效的分析,必须将向量数据转换为拓扑结构。这通常需要大量的处理,并且通常需要大量的数据清理。同样,拓扑是静态的,矢量数据的任何更新或编辑都需要重新构建拓扑。用于操纵和分析功能的算法很复杂,可能需要大量处理。通常,这会固有地限制大型数据集(例如,大量功能)的功能。连续数据(例如高程数据)不能有效地以矢量形式表示。通常,这些数据层需要大量数据概括或内插。在多边形内进行空间分析和过滤是不可能的

栅格数据

优点:每个单元格的地理位置暗示其在单元格矩阵中的位置。因此,除了起点,例如左下角,不存储地理坐标。由于数据存储技术的性质,数据分析通常易于编程且执行迅速。栅格图(例如一个属性图)的固有特性非常适合数学建模和定量分析。离散数据(例如林分)和连续数据(例如高程数据)的适应性一样好,并且有助于两种数据类型的集成。网格单元系统与基于栅格的输出设备(例如静电绘图仪,图形终端)非常兼容。

缺点:像元大小决定了表示数据的分辨率。取决于细胞分辨率,很难充分表示线性特征。因此,难以建立网络链接。如果存在大量数据,则关联属性数据的处理可能很麻烦。栅格地图固有地仅反映区域的一个属性或特征。由于大多数输入数据都是矢量形式的,因此数据必须经过矢量到光栅的转换。除了增加的处理要求外,由于泛化和选择不适当的单元格大小,这还可能引起数据完整性问题。网格单元系统的大多数输出​​地图都不符合高质量的制图需求。


19

像素与坐标 当我想到光栅图时,我的第一个想法是卫星图像。市区的详细卫星图像中的几乎每个像素都可以包含唯一信息。网络地图中的单个图块(通常是Mercator的一种变体,通常简称为“ Spherical Mercator ”或“ Web Mercator ”,并得到GoogleBing,Yahoo,OSM和ESRI的支持)通常具有256 x 256 = 65,536像素,每个像素缩放级别具有(2 ^ zoom * 2 ^ zoom)磁贴。当我想到Vector时,我会想到多边形和直线。例如,详细说明整个城市(可能是数百万个栅格图块)区域分区边界的形状文件可能只有65,000个Vector形状。

精确缩放 听起来您(可能是大多数读者)已经知道光栅固定像素和矢量(坐标图)之间最明显的区别。矢量绘图(和地图)比像素具有更高的保真度,因为矢量数据包含坐标图样(点,多边形,线等),这些坐标图样可以使用简单的公式以不同的分辨率相对于彼此渲染,而像素大小调整通常使用导致图像伪影的平滑算法

图像压缩与结构压缩 实际上,大多数图像没有100%的唯一像素可以压缩为较小的数据包,并且许多矢量文件都包含许多低细节缩放级别不需要的多余细节。图像压缩是一个众所周知的非常有效的过程,几乎每个编码库都内置有类来完成这项工作。矢量坐标压缩或“几何简化”不太常见(因为GIS通常比通用图像处理少一些)。以我的经验,您将花费将近0的时间来考虑图像压缩(只需将其打开或关闭),而花更多的时间来考虑空间压缩。请查看道格拉斯·皮克算法的示例,或者只是使用QGIS 和一些人口普查边界文件。

客户端与服务器端渲染 最终,在计算机上查看的所有内容均以特定分辨率(即缩放级别)渲染为屏幕上的像素。通常(尤其是在网络上)面临的挑战是尽可能高效地将这些像素呈现在用户面前。在美国人口普查区域和块组形状文件之所以特别有趣,是因为它们刚好在矢量数据集的边界上,而矢量数据集“太大”而无法在Web浏览器中呈现为矢量数据。与此形成对比的是,美国各县只能勉强以矢量下载的形式呈现在现代浏览器中。虽然美国人口普查区块组矢量形状文件肯定会小于渲染的栅格图集,以便在多个缩放级别覆盖整个美国,但区块组形状文件太大(接近1GB),以至于Web浏览器无法按需下载。即使Web浏览器可以快速下载文件,大多数Web浏览器(即使使用Flash)在渲染大量形状时也非常慢。因此,对于查看大型矢量数据集,通常最好将它们转换为压缩图像以传输到Web浏览器。

一些实际的例子 我回答过类似的问题,前几天关于在谷歌地图渲染大型数据集。您可以在此处查看该问题以及《纽约时报》和其他期刊所使用的“最佳实践”的详细分析。

几年前,他们决定从繁重的客户端矢量渲染过渡到服务器端矢量渲染,后者将压缩后的图块传递给纯HTML和JavaScript。我们有一个包含多个版本的Html + Raster(服务器生成的图像平铺)和Flash + Vector(客户端大量渲染)的地图库


10

在两种格式中显示相同的数据有时有助于理解它们的固有差异:

光栅与矢量与现实生活

稍后,我在同一个.pdf演示文稿中得到了解决: 扫雷器分析实例 来源:Juniper GIS


8

听起来您正在寻找一种向非技术人员表达这一点的方法,也许吗?您可以比喻两个童年的物品,方格纸和一个点状拼图。一张方格纸中的每个正方形都对应一个栅格像元,因此请想象为每个正方形着色或在其中添加数字。矢量数据是点对点的难题。在两种情况下,每一层只是另一张纸。


5

此图片很好地说明了数据的栅格与矢量表示形式。

在此处输入图片说明 在Rastor中,考虑中的区域分为相等的正方形和分配给它的特征。因此,如果您考虑为rastor创建数据结构,它将是一个2D数组,每个x,y坐标均引用are中的一个正方形,并且可以具有某些预定义的特征,例如建筑物,道路,植被,水体等。

在Vector中,数据以点,线和面表示。因此,旅游景点用POINT(x,y)表示,河流或道路表示为线串(这是一系列连接点),湖泊或体育场等表示为多边形(点列表)形成一个封闭区域)-在此处了解更多信息:https//en.wikipedia.org/wiki/Well-known_text

图片来自网络搜索,当时我已经截取了屏幕截图,现在我没有网络原始资源的链接!抱歉!

但是希望这个答案有助于向GIS初学者讲解:D


0

最好将栅格数据视为矢量数据的一种特殊类型。在矢量数据中,地图上的线由特定现象确定。在栅格数据中,此轮廓由任意网格定义,该网格独立于其试图映射的现象。通常,此网格是特定传感器(例如相机)捕获信息的方式的结果。但是在所有情况下,栅格数据都可以用矢量表示。


将栅格数据描述为矢量数据的实例非常少见,因此您应考虑放大并证明该断言。
ub

@whuber我同意我的理由不足。从技术上讲,栅格可以向量形式表示。这个事实有助于理解,但实际上没有用。
马修·斯内普

我不认为将栅格视为一种特殊的矢量有助于理解。您能否详细说明一下这种观点如何对您有所帮助?
马特·威尔基2011年

它之所以有用,是因为它鼓励使用开放的方法来使用工具。GIS散布着专门用于特定用途的数据,例如TIN,网络甚至地名。它们都可以用简单的几何形状表示,并且栅格没有什么不同。一个很好的例子是使用栅格作为矢量数据集的索引。这是反直观的,而且对于简单的识别操作而言,速度也相当快。
马修·斯内普

尽管矢量数据看起来像地图上的栅格数据,但两者在分析上根本不同。证明在于考虑一些基本功能。例如,对于n个像元的栅格,通过耗时O(1)的随机访问查找完成在任意行和列索引处的值。使用矢量表示时,相同的值需要通过索引进行查找,从而花费O(log(n))时间。另一个示例:移动栅格需要O(1)时间,因为只有其原点坐标必须更改。向量表示中的相同移位为O(n)。
whuber

0

栅格数据表示有时也称为网格数据表示。它通过使用行和列来表示地理数据或信息,其中每个单元格代表具有特定表示形式的数字数据。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.