栅格存储设置概述
栅格存储环境设置可用来调整默认压缩类型、金字塔创建和计算统计数据的默认设置、默认分块大小、默认重采样方法以及地理处理核心栅格工具使用的 NoData 制图方法。
地理处理扩展模块工具集(例如 3D Analyst、Geostatistical Analyst 和 Geostatistical Analyst)并不支持所有栅格存储设置。有关受支持环境的详细信息,请参阅各工具的帮助。
并非所有设置都适用于所有存储类型。有关详细信息,请参阅栅格存储矩阵(下表)。文件组 2 由 ERDAS IMAGINE 文件组成。其余所有 ArcGIS 支持的栅格文件格式都位于文件组 1 中。
存储设置 |
文件组 1 |
文件组 2 |
个人“地理数据库” |
文件地理数据库 |
ArcSDE |
---|---|---|---|---|---|
金字塔 |
是 OVR 文件 |
是 RRD 类型 |
是 RRD 类型 |
是 |
是 |
|
是 |
是 |
是 |
是 |
是 |
|
是 |
是 |
是 |
是 |
是 |
| 是 | 否 | 否 | 是 | 是 |
栅格统计 |
是 |
是 |
是 |
是 |
是 |
|
是 |
是 |
是 |
是 |
是 |
|
是 |
是 |
是 |
是 |
是 |
压缩 |
是* |
是 RLE 压缩 |
是 |
是 |
是 |
|
是* |
否 |
是 |
是 |
是 |
|
是* |
否 |
是 |
是 |
是 |
|
是* |
否 |
是 |
是 |
是 |
分块大小 |
仅限于 TIFF |
否 |
否 |
是 |
是 |
压缩取决于文件格式类型。要查看哪些文件格式可支持压缩,请参阅受支持的栅格数据集文件格式。
金字塔
金字塔是数据集分辨率递减的表示方法。通过仅检索对于指定分辨率所必需的数据,金字塔可以加快栅格数据集的显示。默认情况下,通过对原始数据进行重采样可为栅格数据集创建金字塔。有三种重采样方法可供使用:最邻近法、双线性插值法和三次卷积插值法。
如果没有选中“构建金字塔”,将不会使用输出栅格创建金字塔。不构建金字塔可以节省存储空间,但这将导致显示速度变慢,在使用较大的栅格数据集时更是如此。
您可以选择跳过第一个金字塔等级。跳过第一个金字塔等级将会节省一点磁盘空间,但会在查看小比例时使显示变慢。或者,您可定义等级的数量,但以很大比例查看时这可能影响速度。
默认为最邻近法。该方法可用于任何栅格数据集。最邻近法用于包含色彩映射表的名目数据或栅格数据集,例如,土地利用数据、扫描地图与假彩色图像。
对于诸如卫星影像或航空摄影这样的连续数据,可使用双线性插值法或三次卷积插值法。
如果将栅格金字塔构建为概视图 (OVR),则也可以使用 LZ77 或 JPEG 压缩金字塔。如果金字塔只能构建为递减分辨率数据集,则不可使用其他压缩选项。
统计数据
统计分析选项可用于为输出栅格数据集构建统计数据。在 ArcMap 或 ArcCatalog 中执行某些任务(如应用对比度拉伸或分类数据等)时,需要对栅格数据集进行统计。如果尚未计算统计数据,也不必构建统计数据,因为会在首次需要时进行计算。然而,如果要使用某些需要统计数据的要素,建议在使用统计数据之前为栅格数据集计算统计数据。如果已经计算了统计数据,则栅格的默认显示在多数情况下都将得到改善,因为在有统计数据的情况下将应用标准差拉伸。
如果设置了“跳跃”因子,则会跳过一些像素,从而可加快统计数据的计算过程。“跳跃”因子对 GRID 数据集不起作用。
设置为忽略的值不会参与统计数据计算。通常,您可能需要忽略背景的值。
压缩类型
任何输出为栅格数据集的工具都可以使用压缩类型设置。地理处理工具共提供九种不同的压缩方法。将栅格加载到地理数据库时支持其中的四种:LZ77、JPEG、JPEG2000 和无。
压缩 |
像素深度(8 位) |
像素深度(16 位) | 其他信息 |
---|---|---|---|
LZ77 |
是 |
是 | 任何像素深度 |
JPEG |
是 |
仅限以 16 位数据形式存储的 12 位数据 | |
JPEG_YCbCr | 是 | 否 | |
JPEG2000 |
是 |
是 | |
PackBits | 是 | 否 | 1 位到 8 位数据 |
LZW | 是 | 是 | 任何像素深度 |
RLE | 是 | 是 | 任何像素深度 |
CCITT_G3 | 否 | 否 | 仅适用于 1 位数据 |
CCITT_G4 | 否 | 否 | 仅适用于 1 位数据 |
CCITT_1D | 否 | 否 | 仅适用于 1 位数据 |
LZ77(默认)是一种无损压缩。这种压缩可保留所有栅格像元值。LZ77 与 PNG 图像格式的压缩算法相同,类似于 ZIP 压缩。由于压缩后像素值不更改,所以您可以使用 LZ77 来执行视觉或算法分析。
JPEG 是有损压缩,因为其在压缩和解压后可能不会保留栅格像元值。JPEG 使用公共域 JPEG (JFIF) 压缩算法并只用于 8 位无符号栅格数据(单波段灰度数据或三波段栅格数据)。
JPEG_YCbCr 为使用亮度 (Y) 和色度(Cb 和 Cr)颜色空间组件的有损压缩。
由于 JPEG2000 采用小波压缩技术压缩栅格,因此栅格在视觉上是无损的。这意味着尽管像元值确实经过处理,但是很难对原始栅格与压缩栅格进行分辨。对作为图片或背景影像的栅格使用 JPEG 或 JPEG2000。
如果选择 JPEG 或 JPEG2000,您也可以设置压缩质量来控制影像由于压缩算法而损失的画质。一个压缩质量较高的压缩影像的像素值会接近于原始影像的像素值。JPEG 的压缩质量的有效值范围是 5 到 95。JPEG 2000 的压缩质量的有效值范围是 1 到 100。默认的压缩质量是 75。压缩量取决于数据和压缩质量。同类数据越多,压缩比就越高。压缩质量越低,压缩比越高。与无损压缩相比,有损压缩通常会产生较高的压缩比。
压缩数据的主要优点是所压缩的数据需要较小的存储空间并且会加快数据的显示,因为传输的信息较少。
分块大小
任何创建栅格数据集并以块存储数据集的工具都可以使用切片大小设置。
默认切片大小为 128 x 128,该默认值适合于大多数情况。但是,如果切片大小过大,就会导致在每次访问数据时调出一些不必要的数据。例如,您想要显示一个 100 x 100 的窗口,而该窗口只覆盖一个切片。如果将切片大小设置为 512,则您需要获得 512 x 512 像素的切片。如果将大小设置为 128 x 128,那么当显示窗口为 100 x 100 时,调出的额外数据会比较少。
重采样方法
重采样是在变换栅格数据集时插入像素值的过程。在以下情况使用:输入和输出排列不准确、像素大小发生变化、数据被平移或这些原因结合在一起。
- NEAREST—Performs a nearest neighbor assignment, is the fastest of the interpolation methods. It is used primarily for discrete data, such as a land-use classification, since it will not change the values of the cells. The maximum spatial error will be one-half the cell size.
- BILINEAR—Performs a bilinear interpolation, determines the new value of a cell based on a weighted distance average of the four nearest input cell centers. It is useful for continuous data and will cause some smoothing of the data.
- CUBIC—Performs a cubic convolution, determines the new value of a cell based on fitting a smooth curve through the 16 nearest input cell centers. It is appropriate for continuous data, although it may result in the output raster containing values outside the range of the input raster. It is geometrically less distorted than the raster achieved by running the nearest neighbor resampling algorithm. The disadvantage of the Cubic option is that it requires more processing time. In some cases, it can result in output cell values outside the range of input cell values. If this is unacceptable, use Bilinear instead.
NoData
当输入的 NoData 值需要传递到输出栅格时,可使用此环境。您可以通过该设置指定哪个值将用来指定为输出中的 NoData 值。
- NONE - 不会有任何适当的 NoData 值规则。如果您的输入和输出具有相同的值范围,将传送 NoData 且不进行任何更改。但是,如果值范围有所改变,则输出中没有针对 NoData 的值。这是默认方法。
- MAXIMUM - 输出数据范围中的最大值可用作 NoData 值。
- MINIMUM - 输出数据范围中的最小值可用作 NoData 值。
- MAP_UP - 提升范围中的最低值,且最低值将成为 NoData。如果数据无符号,零值会变为一、NoData 值将为零,其他值保持不变。如果数据有符号,会提升范围中的最低值,且最低值将变为 NoData。例如,对于 8 位有符号的整数数据,-127 会变为 -126 且 NoData 值将为 -127。
- MAP_DOWN - NoData 值是数据范围中的最大值,数据范围中的最高值会变为一个较低的值,而其余的值保持不变。例如,对于 8 位无符号的整数数据,NoData 值将为 255,值 255 会变为 254,其余值保持不变。
PROMOTION - 如果 NoData 值超出了输入的数据范围,输出的像素深度可能会提升到下一个可用级别,NoData 会采用新数据范围内的最大值。例如,需要将值 256 作为 NoData 的 8 位无符号的整数数据集,将提升到 16 位数据集,并且最大值将变为 NoData。如果要写入到输出的 NoData 值位于输入的数据范围内,或没有任何 NoData,则不会提升像素深度。
如果 NoData 值超出输入的数据范围,像素深度会提升到下一个可用级别,且 Nodata 值会由用户指定。例如,需要 256 作为NoData 的 8 位无符号整数数据集会提升为 16 位数据集,且 256 会变为 NoData 值。如果指定的 NoData 值位于输入数据范围内,则不会提升输出的像素深度。