返回 ST_Raster 值的属性的函数
对于本主题中列出的每个栅格属性,都存在一个或多个用于确定栅格是否具有属性或属性具有什么值的函数。
这些函数可独立在 SQL SELECT 语句中使用或作为 UPDATE 语句中 WHERE 子句的一部分来限制要更新的值。或者,可以将这些函数包含在 SELECT 语句中作为脚本的一部分,以在更改栅格属性前确定该属性。
描述
可使用 describe 函数获取 ST_Raster 值的常规或特定属性。
如果使用未指定任何参数的 describe 函数,将返回常规属性。或者,可使用包含参数的 describe 函数以获取特定属性。可用于 describe 函数的可能参数包括色彩映射表和存储。
指定色彩映射表参数时,将返回 ST_Raster 值的常规属性和应用于栅格的色彩映射表索引。如果栅格值中不存在色彩映射表但您描述了色彩映射表,则将会收到错误消息。
使用存储参数时,除返回常规栅格属性之外还将返回以下信息:
- 每个波段和金字塔等级内的最小值
- 每个波段和金字塔等级内的最大值
- 每个波段和金字塔等级内的平均值
- 每个波段和金字塔等级内像素值的标准差
- 栅格值中像素总数的计数
- 按波段和金字塔等级细分的栅格值的压缩大小
像素值
ST_Raster 列支持以下像素值:
- 1bit:1 位数据
- 4bit:4 位数据
- uint8:8 位无符号整数
- int8:8 位有符号整数
- uint16:16 位无符号整数
- int16:16 位有符号整数
- uint32:32 位无符号整数
- int32:32 位有符号整数
- float:单精度浮点数
- double:双精度浮点数
使用 ST_Raster getPixelType 函数确定特定 ST_Raster 值所具有的像素值。
统计数据
栅格值上存在统计数据时,ArcGIS for Desktop 在渲染栅格时可对栅格进行拉伸,从而使其更易查看。使用栅格地理处理工具时也需要栅格统计数据。
要确定 ST_Raster 值上是否具有计算的统计数据,请使用 ST_Raster hasStats 函数。
也可在 UPDATE 语句的 WHERE 子句中使用 hasStats 函数来限制只更新不具有统计数据的栅格或具有计算的统计数据的记录。
压缩
以下压缩类型可用于 ST_Raster 值:
- NONE:存储数据时不使用压缩。
- LZ77:LZ77 使用的长度压缩是无损压缩,并且最适用于低变异性的数据,也适用于无法使用其他压缩算法的数据。
- JPEG:JPEG 是 Joint Photographic Experts Group(联合图像专家组)的缩写,该委员会开发了此压缩标准。JPEG 是一种有损压缩类型。JPEG 压缩仅适用于不包含色彩映射表索引的 8 位数据。
- JP2:这是 JPEG 2000 小波压缩类型。可将此压缩类型应用于 8 位数据或 16 位数据。
可使用 getCompressionType 函数确定 ST_Raster 值所应用的压缩类型。
LZ77 压缩是最常用的类型。然而,JPEG 压缩可用于三波段 8 位栅格数据或高变异性灰度数据。JPEG2000 压缩通常留给 16 位数据使用。
金字塔插值类型
金字塔插值法是在栅格值上构建金字塔时应用的算法。插值法根据到其他栅格值的接近程度来预测栅格值中的像元值。
有三种可能的金字塔插值类型可用于 ST_Raster 值:最邻近法、双线性法和双三次卷积法。要确定在特定 ST_Raster 值上构建金字塔时所使用的插值类型,请使用 getInterpolationType 函数。
因为双线性插值法可生成更平滑的图像,因此最常使用。但是,由于双线性插值法不保留前一等级的像素值,因此不适用于应用了色彩映射表的数据和小于 8 位的像素数据。
通常情况下,如果不使用双线性插值法,则使用最邻近法金字塔插值类型。
如果使用 getInterpolationType 函数查询的栅格值上没有金字塔,将返回空值。
交叉类型
交叉类型是存储图像的实际像素值的方案。
ST_Raster 支持波段按像元交叉 (BIP) 和波段顺序 (BSQ) 两种交叉类型。要确定特定 ST_Raster 值上所使用的类型,请使用 getInterleaveType 函数。