平衡镶嵌数据集色彩 (数据管理)
摘要
对镶嵌数据集进行色彩平衡,以使切片无缝显示。
用法
-
仅当以下与数据有关的条件成立时,才可使用色彩平衡:
- 所有波段都已计算了统计数据。
- 所有波段都已建立了直方图。
- 所有栅格数据集的波段数目都相同。
- 所有栅格数据集的像素类型和像素深度都相同。仅支持 8 位无符号和 16 位无符号位深度。
- 所有栅格数据集都没有关联的色彩映射表。
-
在执行任何色彩平衡处理之前,执行预处理选项。
-
有三个平衡算法可供选择:匀光、直方图和标准差。
-
仅当选择匀光平衡方法时,目标颜色表面才可用。使用匀光方法时,每个像素都需要一个目标颜色,而目标颜色是从目标颜色表面中选取的。有五种类型的目标颜色表面可供您选取目标颜色:单色表面、颜色格网表面、一阶表面、二阶表面和三阶表面。
-
可以使用目标栅格指定平衡栅格的目标。
- 使用匀光平衡时,得出的目标颜色取决于当时所选择的目标颜色表面类型。对于单色表面,将使用参照目标图像的平均值。对于颜色格网表面,会将参照目标图像重采样为适合的格网。对于多项式阶表面,通过最小二乘拟合从参照目标图像获得多项式的系数。
- 使用直方图平衡时,将基于参照目标图像获得目标直方图。
- 使用标准差平衡时,将基于参照目标图像获得目标标准差。
要移除色彩校正,可右键单击 ArcCatalog 或目录窗口中的镶嵌数据集,然后单击移除 > 移除色彩校正。
语法
参数 | 说明 | 数据类型 |
in_mosaic_dataset |
输入或导航到需要对其进行色彩校正的镶嵌数据集。 | Mosaic Layer; Mosaic Dataset |
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 |
代码示例
这是 ColorBalanceMosaicDataset 的 Python 示例。
import arcpy ColorBalanceMosaicDataset_management("C:/workspace/fgdb.gdb/mosData","DODGING",\ "COLOR_GRID", "C:/workspace/target.tif",\ "C:/temp/excludeArea.tif","NONE","1", \ "BlockName")
这是 ColorBalanceMosaicDataset 的 Python 脚本示例。
##=========================== ##Color Balance Mosaic Dataset ##Usage: ColorBalanceMosaicDataset_management(in_mosaic_dataset, {DODGING | ## HISTOGRAM | STANDARD_DEVIATION}, ## {SINGLE_COLOR | COLOR_GRID | ## FIRST_ORDER | SECOND_ORDER | THIRD_ORDER}, ## {target_raster}, {exclude_raster}, ## {NONE | STANDARD_DEVIATION | MINIMUM_MAXIMUM ## | ADAPTIVE}, {gamma}), {block_field} try: import arcpy arcpy.env.workspace = "c:/workspace" # Color Correction Mosaic Dataset with target layer arcpy.ColorBalanceMosaicDataset_management("CC.gdb/cc1", "DODGING", "SINGLE_COLOR", "Aerial_photo.lyr", "#", "NONE", "#", "BlockName") # Color Correction Mosaic Dataset with exclude area dataset and prestretch arcpy.ColorBalanceMosaicDataset_management("CC.gdb/cc2", "DODGING", "COLOR_GRID", "#", "excludearea.tif", "STANDARD_DEVIATION", "3", "BlockName") except: print "Color Balance Mosaic Dataset example failed." print arcpy.GetMessages()