平衡镶嵌数据集色彩 (Data Management)
摘要
对镶嵌数据集进行色彩平衡,以使切片无缝显示。
用法
-
仅当以下与数据有关的条件成立时,才可使用色彩平衡:
- 所有波段都已计算了统计数据。
- 所有波段都已建立了直方图。
- 所有栅格数据集的波段数目都相同。
- 所有栅格数据集的像素类型和像素深度都相同。仅支持 8 位无符号和 16 位无符号位深度。
- 所有栅格数据集都没有关联的色彩映射表。
-
在执行任何色彩平衡处理之前,执行预处理选项。
-
有三个平衡算法可供选择:匀光、直方图和标准差。
-
仅当选择匀光平衡方法时,目标颜色表面才可用。使用匀光方法时,每个像素都需要一个目标颜色,而目标颜色是从目标颜色表面中选取的。有五种类型的目标颜色表面可供您选取目标颜色:单色表面、颜色格网表面、一阶表面、二阶表面和三阶表面。
-
可以使用目标栅格来指定平衡栅格的目标。
- 使用匀光平衡时,得出的目标颜色取决于当时所选择的目标颜色表面类型。对于单色表面,将使用参照目标图像的平均值。对于颜色格网表面,会将参照目标图像重采样为适合的格网。对于多项式阶表面,通过最小二乘拟合从参照目标图像获得多项式的系数。
- 使用直方图平衡时,将基于参照目标图像获得目标直方图。
- 使用标准差平衡时,将基于参照目标图像获得目标标准差。
要移除色彩校正,可右键单击 ArcCatalog 或目录窗口中的镶嵌数据集,然后单击移除 > 移除色彩平衡。
语法
参数 | 说明 | 数据类型 |
in_mosaic_dataset |
输入或导航到需要对其进行色彩校正的镶嵌数据集。 | Mosaic Layer |
balancing_method (可选) |
选择要使用的平衡算法。
| String |
color_surface_type (可选) |
仅当选择匀光平衡方法时,目标颜色表面类型才可用。使用匀光方法时,每个像素都需要一个目标颜色,而目标颜色是根据所选的表面类型确定的。
| String |
target_raster (可选) |
使用目标栅格影像可以指定用于平衡栅格的目标栅格。 使用匀光平衡时,得出的目标颜色取决于当时所选择的目标颜色表面类型。对于单色,将使用参照目标图像的平均值。对于颜色格网,会将参照目标图像重采样为适合的格网。对于多项式阶表面,通过最小二乘拟合从参照目标图像获得多项式的系数。 使用直方图平衡时,将基于参照目标图像获得目标直方图。 使用标准差平衡时,将基于参照目标图像获得目标标准差。 | Raster Layer |
gamma (可选) |
输入将在预处理拉伸中使用的 gamma 值。只有选中了“标准差”或“最小值-最大值”预拉伸类型后,此参数才可用。 可通过应用 Gamma 拉伸来控制图像的整体亮度。如果 Gamma 系数设置得太低,中间色调将太暗;而如果 Gamma 系数设置得太高,中间色调又会太亮。Gamma 系数不仅会改变图像的亮度,还会改变红绿蓝之间的比率。 | Double |
exclude_raster (可选) |
导航到要用作排除图层的栅格。可以使用生成排除区域工具创建排除区域。 应在执行色彩平衡之前考虑排除区域。 | Raster Layer |
stretch_type (可选) |
在执行其他任何色彩校正之前,可对各个栅格目录项执行预拉伸。这意味着在色彩校正过程中,原始栅格目录项将使用拉伸后的像素值,而不是原始像素值。在应用色彩校正之前,最好使用此选项将颜色更改为所期望的分布形式。
| String |
block_field (可选) |
镶嵌数据集属性表中的字段名称,用于标识在执行某些计算和操作时应被视为单一项目的多个项目。 | String |
代码实例
这是 ColorBalanceMosaicDataset 的 Python 示例。
import arcpy
arcpy.ColorBalanceMosaicDataset_management(
"C:/workspace/CC.gdb/cc1", "DODGING", "SINGLE_COLOR",
"C:/workspace/Aerial.lyr", "#", "STANDARD_DEVIATION", "3", "BLOCKNAME")
这是 ColorBalanceMosaicDataset 的 Python 脚本示例。
#########*#########*##########*#########*#########*#########*#########*&&&&&&&&&&
# Color Correction Mosaic Dataset with target layer
import arcpy
arcpy.env.workspace = "C:/workspace"
mdname = "CC.gdb/cc1"
ccmethod = "DODGING"
dogesurface = "SINGLE_COLOR"
targetras = "C:/workspace/Aerial_photo.lyr"
excluderas = "#"
prestretch = "NONE"
gamma = "#"
blockfield = "#"
arcpy.ColorBalanceMosaicDataset_management(
mdname, ccmethod, dogesurface, targetras, excluderas,
prestretch, gamma, blockfield)