Summary
Saves a copy of a raster dataset or converts a mosaic dataset into a single raster dataset.
Usage
You can save your output to BIL, BIP, BMP, BSQ, CRF, DAT, Esri Grid, GIF, IMG, JPEG, JPEG 2000, MRF, PNG, TIFF, or any geodatabase raster dataset.
When storing a raster dataset in a geodatabase, no file extension should be added to the name of the raster dataset. When storing the raster dataset in a file format, you need to specify the file extension:
- .bil for Esri BIL
- .bip for Esri BIP
- .bmp for BMP
- .bsq for Esri BSQ
- .dat for ENVI DAT
- .gif for GIF
- .img for ERDAS IMAGINE
- .jpg for JPEG
- .jp2 for JPEG 2000
- .png for PNG
- .tif for TIFF
- .mrf for MRF
- .crf for CRF
- No extension for Esri Grid
This tool can be used to scale your pixel type from one bit depth to another. When you scale your pixel depth, your raster will display the same, but the values will be scaled to the new bit depth that was specified.
The output of this tool is always a raster dataset. This tool will accept a mosaic dataset as the input, but the output will still be a raster dataset—the contents of the mosaic dataset will be mosaicked to create a raster dataset.
If you checked the Use world file to define the coordinates of the raster option in ArcMap Options, a world file will be written out. If an existing world file exists, it will be overwritten. There may also be a half-pixel shift in the output spatial reference.
For file-based rasters and personal geodatabase rasters, Ignore Background Value must be set to the same value as NoData for the background value to be ignored. File geodatabase rasters and enterprise geodatabase rasters will work without this extra step.
When storing your raster dataset to a JPEG file, a JPEG 2000 file, or a geodatabase, you can specify a Compression Type and Compression Quality in the Environments.
The GIF format only supports single-band raster datasets.
The Pixel Type determines the bit depth of the output raster dataset. There is rescaling of the raster values when a different pixel type is chosen. If the pixel type is demoted (lowered), the raster values outside the valid range for that pixel depth will be truncated and lost. To learn about the bit depth capacity for supported export formats, see Supported raster dataset file formats.
Syntax
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}, {format}, {transform})
Parameter | Explanation | Data Type |
in_raster | The raster dataset or mosaic dataset you want to copy. | Mosaic Dataset; Mosaic Layer; Raster Dataset; Raster Layer; File |
out_rasterdataset | The name and format for the raster dataset you are creating.
When storing a raster dataset in a geodatabase, do not add a file extension to the name of the raster dataset. When storing a raster dataset to a JPEG file, JPEG 2000 file, TIFF file, or geodatabase, you can specify a compression type and compression quality. | Raster Dataset |
config_keyword (Optional) | Specifies the storage parameters (configuration) for a geodatabase. Configuration keywords are set up by your database administrator. | String |
background_value (Optional) | Use this option to remove the unwanted values created around the raster data. The value specified will be distinguished from other valuable data in the raster dataset. For example, a value of zero along the raster dataset's borders will be distinguished from zero values within the raster dataset. The pixel value specified will be set to NoData in the output raster dataset. For file-based rasters and geodatabase rasters, Ignore Background Value must be set to the same value as NoData for the background value to be ignored. Enterprise and geodatabase rasters will work without this extra step. | Double |
nodata_value (Optional) | All the pixels with the specified value will be set to NoData in the output raster dataset. | String |
onebit_to_eightbit (Optional) | Choose whether the input 1-bit raster dataset will be converted to an 8-bit raster dataset. In this conversion, the value 1 in the input raster dataset will be changed to 255 in the output raster dataset. This is useful when importing a 1-bit raster dataset to a geodatabase. One-bit raster datasets have 8-bit pyramid layers when stored in a file system, but in a geodatabase, 1-bit raster datasets can only have 1-bit pyramid layers, which makes the display unpleasant. By converting the data to 8 bit in a geodatabase, the pyramid layers are built as 8 bit instead of 1 bit, resulting in a proper raster dataset in the display.
| Boolean |
colormap_to_RGB (Optional) | If the input raster dataset has a color map, the output raster dataset can be converted to a three-band output raster dataset. This is useful when mosaicking rasters with different color maps.
| Boolean |
pixel_type (Optional) | Set the bit depth, or radiometric resolution, of the raster or mosaic dataset. If not defined, it will be taken from the first raster dataset.
| String |
scale_pixel_value (Optional) | When the output is a different pixel type than the input (such as 16 bit to 8 bit), you can choose to have the values scaled to fit into the new range; otherwise, the values that do not fit into the new pixel range will be discarded. If scaling up, such as 8 bit to 16 bit, the minimum and maximum of the 8-bit values will be scaled to the minimum and maximum in the 16-bit range. If scaling down, such as 16 bit to 8 bit, the minimum and maximum of the 16-bit values will be scaled to the minimum and maximum in the 8-bit range.
| Boolean |
RGB_to_Colormap (Optional) | Convert an 8-bit, 3-band (RGB) raster dataset to a single-band raster dataset with a color map. This operation suppresses noise that is often found in scanned images and is ideal for screen captures, scanned maps, or scanned documents. This is not recommended for satellite or aerial imagery or thematic raster data.
| Boolean |
format (Optional) | The output raster format.
| String |
transform (Optional) | Choose whether to apply the transformation associated with the raster to the output. The input raster can have a transformation associated with it, that is, not actually saved within the input, such as a world file or as a geometric function.
| Boolean |
Code sample
CopyRaster example 1 (Python window)
This is a Python sample for the CopyRaster tool.
##====================================
##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},
## {NONE | ScalePixelValue}, {NONE | RGBToColormap}, {TIFF | IMAGINE Image |
## BMP | GIF | PNG | JPEG | JPEG2000 | Esri Grid | Esri BIL | Esri BSQ |
## Esri BIP | ENVI | CRF | MRF}, {NONE | Transform})
try:
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","","")
##Copy to cloud raster format
arcpy.CopyRaster_management("slope_elev.tif", "https://s3.amazonaws.com/S3Storage/slope_elev", format="CRF", transform="Transform")
except:
print "Copy Raster example failed."
print arcpy.GetMessages()
CopyRaster example 2 (stand-alone script)
This is a Python script sample for the CopyRaster tool.
##====================================
##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},
## {NONE | ScalePixelValue}, {NONE | RGBToColormap}, {TIFF | IMAGINE Image |
## BMP | GIF | PNG | JPEG | JPEG2000 | Esri Grid | Esri BIL | Esri BSQ |
## Esri BIP | ENVI | CRF | MRF}, {NONE | Transform})
import arcpy
arcpy.env.workspace = r"C:\PrjWorkspace"
##Copy to cloud raster format
arcpy.CopyRaster_management(
"slope_elev.tif", "https://s3.amazonaws.com/S3Storage/slope_elev",
format="CRF")
Environments
Licensing information
- ArcGIS Desktop Basic: Yes
- ArcGIS Desktop Standard: Yes
- ArcGIS Desktop Advanced: Yes