摘要
保存栅格数据集的副本或将镶嵌数据集转换成单个栅格数据集。
用法
可将输出结果保存为 BIL、BIP、BMP、BSQ、DAT、Esri Grid、GIF、IMG、JPEG、JPEG 2000、PNG、TIFF 格式或任意地理数据库栅格数据集。
以地理数据库形式存储栅格数据集时,不应向栅格数据集的名称添加文件扩展名。以文件格式存储栅格数据集时,需要指定文件扩展名,具体如下:
- .bil - Esri BIL
- .bip - Esri BIP
- .bmp - BMP
- .bsq - Esri BSQ
- .dat - ENVI DAT
- .gif - GIF
- .img - ERDAS IMAGINE
- .jpg - JPEG
- .jp2 - JPEG 2000
- .png - PNG
- .tif - TIFF
- 无扩展名 - Esri Grid
此工具可用于将像素类型从一个位深度缩放到另一个位深度。缩放像素深度时,栅格会显示相同的位深度,而值却缩放到指定的新的位深度。
此工具的输出始终是栅格数据集。该工具将接受镶嵌数据集作为输入,但输出仍为栅格数据集 - 镶嵌数据集的内容将被镶嵌以创建栅格数据集。
如果已选中 ArcMap 选项中的使用坐标文件定义栅格坐标选项,将写出一个坐标文件。如果已存在现有的坐标文件,则会覆盖该文件。也可能在输出空间参考中偏移半个像素。
对于基于文件的栅格和个人地理数据库栅格,为了忽略背景值,忽略背景值必须设置为与 NoData 相同的值。文件地理数据库栅格和企业级地理数据库栅格无需经过此额外步骤即可忽略背景值。
将栅格数据集存储到 JPEG 文件、JPEG 2000 文件或地理数据库时,可在“环境设置”中指定压缩类型和压缩质量。
GIF 格式仅支持单波段栅格数据集。
像素类型参数将决定输出栅格数据集的位深度。当选择不同像素类型时,会重设栅格值的比例。如果像素类型的范围被降级(降低),则在此像素深度的有效范围外的栅格值将被截断并丢失。要了解有关受支持的导出格式的位深度容量的信息,请参阅受支持的栅格数据集文件格式。
语法
CopyRaster_management (in_raster, out_rasterdataset, {config_keyword}, {background_value}, {nodata_value}, {onebit_to_eightbit}, {colormap_to_RGB}, {pixel_type}, {scale_pixel_value}, {RGB_to_Colormap})
参数 | 说明 | 数据类型 |
in_raster | 想要复制的栅格数据集或镶嵌数据集。 | Mosaic Dataset; Mosaic Layer; Raster Dataset; Raster Layer |
out_rasterdataset | 要创建的栅格数据集的名称和格式。
以地理数据库形式存储栅格数据集时,请勿向栅格数据集的名称添加文件扩展名。 将栅格数据集存储到 JPEG 文件、JPEG 2000 文件、TIFF 文件或地理数据库时,可以指定压缩类型和压缩质量。 | Raster Dataset |
config_keyword (可选) | 指定文件地理数据库或企业级地理数据库的存储参数(配置)。配置关键字由数据库管理员进行设置。 | String |
background_value (可选) | 使用此选项移除在栅格数据周围创建的不需要的值。指定的值与栅格数据集中的其他有用数据不同。例如,栅格边界上为零的值不同于栅格数据集内的零值。 指定的像素值在输出栅格数据集中将被设置为 NoData。 对于基于文件的栅格和地理数据库栅格,为了忽略背景值,忽略背景值必须设置为与 NoData 相同的值。企业级和地理数据库栅格无需经过此额外步骤即可忽略背景值。 | Double |
nodata_value (可选) | 具有指定值的所有像素将在输出栅格数据集中被设置为 NoData。 | String |
onebit_to_eightbit (可选) | 选择是否将输入 1 位栅格数据集转换为 8 位栅格数据集。使用这种转换方法时,输入栅格数据集中的值 1 将在输出栅格数据集中更改为 255。这在将 1 位栅格数据集导入地理数据库时十分有用。1 位栅格数据集存储在文件系统中时包含 8 位金字塔图层,但在地理数据库中,1 位栅格数据集只能包含 1 位金字塔图层,这使得显示画面看起来没有吸引力。通过在地理数据库中将数据转换为 8 位,可将金字塔图层构建为 8 位而非 1 位,从而在显示画面中生成适合的栅格数据集。
| Boolean |
colormap_to_RGB (可选) | 如果输入栅格数据集具有色彩映射表,则可将输出栅格数据集转换为三波段输出栅格数据集。这在镶嵌包含不同色彩映射表的栅格时很有用。
| Boolean |
pixel_type (可选) | 设置栅格数据集或镶嵌数据集的位深度或辐射分辨率。如果未定义,此值将从第一个栅格数据集获取。
| String |
scale_pixel_value (可选) | 当输出的像素类型不同于输入像素类型时(如从 16 位到 8 位),可选择将值缩放到符合新的范围;否则,会丢弃不符合新的像素范围的值。 如果进行放大(如从 8 位到 16 位),8 位值的最小值和最大值会放大到 16 位范围中的最小值和最大值。如果进行缩小(如从 16 位到 8 位),16 位值的最小值和最大值会缩小到 8 位范围中的最小值和最大值。
| Boolean |
RGB_to_Colormap (可选) | 将 8 位 3 波段 (RGB) 栅格数据集转换为带色彩映射表的单波段栅格数据集。此操作会抑制经常出现在扫描图像中的噪声,这非常适用于屏幕捕获、扫描的地图或扫描的文档。但并不建议将其用于卫星、航空影像或专题栅格数据。
| Boolean |
代码实例
复制栅格 (CopyRaster) 示例 1(Python 窗口)
这是复制栅格 (CopyRaster) 工具的 Python 示例。
import arcpy
arcpy.CopyRaster_management("c:/data/background.tif",
"c:/fdgb/CpRaster.gdb/fgdbRD","DEFAULTS",
"0","9","","","8_BIT_UNSIGNED")
复制栅格 (CopyRaster) 示例 2(独立脚本)
这是复制栅格 (CopyRaster) 工具的 Python 脚本示例。
##====================================
##Copy Raster
##Usage: CopyRaster_management in_raster out_rasterdataset {config_keyword} {background_value} {nodata_value} {NONE | OneBitTo8Bit}
## {NONE | ColormapToRGB} {1_BIT | 2_BIT | 4_BIT | 8_BIT_UNSIGNED | 8_BIT_SIGNED | 16_BIT_UNSIGNED
## | 16_BIT_SIGNED | 32_BIT_UNSIGNED | 32_BIT_SIGNED | 32_BIT_FLOAT | 64_BIT}
import arcpy
arcpy.env.workspace = r"C:\PrjWorkspace"
##Copy File RasterDataset to GDB Dataset with Background and Nodata setting
arcpy.CopyRaster_management("background.tif","CpRaster.gdb\\background","DEFAULTS","0","9","","","8_BIT_UNSIGNED")
##Copy 1 BIT
arcpy.CopyRaster_management("1bit.tif","SDE94.sde\\bit8","DEFAULTS","","","OneBitTo8Bit","","")