平衡镶嵌数据集色彩 (Data Management)
摘要
对镶嵌数据集进行色彩平衡,以使切片无缝显示。
用法
- 
仅当以下与数据有关的条件成立时,才可使用色彩平衡: - 所有波段都已计算了统计数据。
- 所有波段都已建立了直方图。
- 所有栅格数据集的波段数目都相同。
- 所有栅格数据集的像素类型和像素深度都相同。仅支持 8 位无符号和 16 位无符号位深度。
- 所有栅格数据集都没有关联的色彩映射表。
 
- 
在执行任何色彩平衡处理之前,执行预处理选项。 
- 
有三个平衡算法可供选择:匀光、直方图和标准差。 
- 
仅当选择匀光平衡方法时,目标颜色表面才可用。使用匀光方法时,每个像素都需要一个目标颜色,而目标颜色是从目标颜色表面中选取的。有五种类型的目标颜色表面可供您选取目标颜色:单色表面、颜色格网表面、一阶表面、二阶表面和三阶表面。 
- 
可以使用目标栅格来指定平衡栅格的目标。 - 使用匀光平衡时,得出的目标颜色取决于当时所选择的目标颜色表面类型。对于单色表面,将使用参照目标图像的平均值。对于颜色格网表面,会将参照目标图像重采样为适合的格网。对于多项式阶表面,通过最小二乘拟合从参照目标图像获得多项式的系数。
- 使用直方图平衡时,将基于参照目标图像获得目标直方图。
- 使用标准差平衡时,将基于参照目标图像获得目标标准差。
 
- 要移除色彩校正,可右键单击 ArcCatalog 或目录 窗口中的镶嵌数据集,然后单击移除 > 移除色彩平衡。 
语法
| 参数 | 说明 | 数据类型 | 
| in_mosaic_dataset | 输入或浏览到需要对其进行色彩平衡处理的镶嵌数据集。 | Mosaic Layer | 
| balancing_method (可选) | 选择要使用的平衡算法。 
 | String | 
| color_surface_type (可选) | 仅当选择匀光平衡方法时,目标颜色表面类型才可用。使用匀光方法时,每个像素都需要一个目标颜色,而目标颜色是根据所选的表面类型确定的。 
 | String | 
| target_raster (可选) | 指定用于平衡栅格的目标栅格。 使用匀光平衡时,得出的目标颜色取决于当时所选择的目标颜色表面类型。对于单色,将使用参照目标图像的平均值。对于颜色格网,会将参照目标图像重采样为适合的格网。对于多项式阶表面,通过最小二乘拟合从参照目标图像获得多项式的系数。 使用直方图平衡时,将基于参照目标图像获得目标直方图。 使用标准差平衡时,将基于参照目标图像获得目标标准差。 | Internet Tiled Layer; Map Server Layer; Raster Layer | 
| exclude_raster (可选) | 浏览到要用作排除图层的栅格。可以使用生成排除区域工具创建排除区域。 应在执行色彩平衡之前考虑排除区域。 | Raster Layer | 
| stretch_type (可选) | 在执行其他任何色彩校正之前,可对各个栅格目录项执行预拉伸。这意味着在色彩校正过程中,原始栅格目录项将使用拉伸后的像素值,而不是原始像素值。在应用色彩校正之前,最好使用此选项将颜色更改为所期望的分布形式。 
 | String | 
| gamma (可选) | 输入将在预处理拉伸中使用的 gamma 值。只有选中了“标准差”或“最小值-最大值”预拉伸类型后,此参数才可用。 可通过应用 Gamma 拉伸来控制图像的整体亮度。如果 Gamma 系数设置得太低,中间色调将太暗;而如果 Gamma 系数设置得太高,中间色调又会太亮。Gamma 系数不仅会改变图像的亮度,还会改变红绿蓝之间的比率。 | Double | 
| 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)