“拉伸”函数通过多种拉伸类型更改亮度、对比度和 Gamma 等属性,从而增强影像效果。
拉伸函数使用来自镶嵌数据集中栅格的统计数据。因此,如果要使用此函数,必须确保已计算出统计数据。
以下是此函数的输入:
- 输入栅格
- 拉伸类型
- 输出最小值和最大值
- 最小裁剪百分比和最大裁剪百分比
- 标准差 n 值
- S 形拉伸强度
- Gamma 和自动 Gamma
- 统计数据、估计统计数据和动态范围调整
拉伸类型
拉伸类型定义了将用于增强栅格外观效果的直方图拉伸。拉伸类型包括:最小值-最大值、标准差、裁剪百分比和无。拉伸功能通过在位深度定义的最小值和最大值范围内沿直方图扩展像素值,从而改善数据的外观。例如,8 位的栅格数据集或镶嵌数据集将在 0 到 255 的范围内拉伸。不同的拉伸将导致栅格显示中出现不同的结果。
下图显示了拉伸的示例。直方图 A 表示影像 A 中的像素值。通过在整个范围内拉伸值(如直方图 B 中所示),您可以改变影像的外观并增强其视觉效果(影像 B)。
输出最小值-最大值
此拉伸类型以最小输出和最大输出像素值作为直方图的端点,应用线性拉伸。例如,在 8 位数据集中,最小值和最大值可为 33 和 206。线性拉伸用于在 256 个值(0 到 255)之间分布值。由于像素值分布在整个直方图范围内,从而提高了影像的亮度和对比度,这使得影像中的要素更加易于区分。
反曲线
将 S 形对比度拉伸设计为高亮显示影像中的中等像素值,但在极值的情况下保持足够对比。将所有像素值沿着反曲线函数(S 型曲线)放置。这样做的结果是在非常亮和非常暗的区域缺少对比,在这些极值的区域之间形成更多对比。对几乎所有的图像而言,这是一种理想的拉伸,且在图像中有云和水时,执行的效果会很好。
拉伸强度决定了反曲线函数在拉伸中的应用程度。较低的值(例如 1)将仅使用曲线的中间部分,由此形成阴暗和模糊的颜色。较高的值(例如 6)将使用整个曲线,由此形成明亮和清晰的颜色。
标准差和裁剪百分比
在许多情况下,您可以假设大部分像素值都处于上限和下限范围内。因此,可以修剪掉极值。您可以使用统计的方法通过定义标准差或裁剪百分比做到这一点。标准差拉伸类型在标准差 (n) 值定义的值之间应用线性拉伸。裁剪百分比拉伸类型在定义的最小和最大裁剪百分比像素值之间应用线性拉伸。
使用以上任意一种拉伸类型时,直方图中处于定义值范围外的所有值将被推到端点。例如,假设您的直方图具有上述相同的值域范围,即 33 到 206,并且您将最小和最大裁剪百分比定义为 2。如果低端的 2% 表示 33 到 45 之间的值,高端的 2% 表示 198 到 206 之间的值,则将在 0 到 255 之间重新分布直方图中的值,其中 33 到 45 之间的值将变为 0,而 198 到 206 之间的值将变为 255,其他所有值在之间分布。同样,如果定义两个标准差,则超过第 2 个标准差的值将变为 0 或 255,其余值在 0 到 255 之间拉伸。
无
如果拉伸类型为无,无论是否存在统计数据都不会应用任何拉伸方法。
Gamma
Gamma 指的是栅格数据集中等灰度值之间的对比度。Gamma 对栅格数据集的黑色或白色值不会产生影响,而仅影响中间值。通过应用 gamma 校正,可以控制栅格数据集的总体亮度。此外,gamma 系数不仅会改变影像的亮度,还会改变红绿蓝之间的比率。
小于 1 的 Gamma 值将降低较暗区域的对比度并增加较亮区域的对比度。这将使影像变暗,但不会降低影像的黑暗或明亮区域的饱和度。这有助于呈现较亮要素的细节,如建筑物顶部。相反,大于 1 的 gamma 值将增加较暗区域的对比度,如建筑物阴影。使用高程数据时,大于 1 的 Gamma 值也将有助于呈现较低高程区域的细节。
可以使用自动 Gamma 从数据集的统计数据和直方图来计算 Gamma。可以通过函数本身来估计统计数据;如果已选择图层,也可以通过软件来估计统计数据。或者,可以通过选中使用 Gamma 手动计算 Gamma 值。
在下图中,可以看到调整用于显示栅格数据集的 Gamma 值的效果:
统计数据、估计统计数据和动态范围调整
您可以在对话框的统计数据部分输入自己的统计数据。默认情况下,会从数据中检索统计数据;但如果在此参数中输入了值,将使用该值来替代默认值。
如果选中估计统计数据,则将根据栅格中心的 1000 x 1000 采样计算统计数据并由拉伸使用。如果选中“估计统计数据”,但栅格已具有统计数据或您已在统计数据表中输入值,则将使用已有统计数据而不进行估计,除非拉伸需要直方图。如果拉伸需要的直方图不存在,则将通过估计生成一个直方图。
如果选中动态范围调整,统计数据将根据输出影像计算并由拉伸使用。如果将在无法执行此类拉伸的 web 应用程序中发布和使用影像,通常应用该选项。