GDAL-RASTER-EDIT(1)

NAME
gdal-raster-edit - Edit in place a raster dataset

Added in version 3.11.

SYNOPSIS

    Usage: gdal raster edit [OPTIONS] <DATASET>
    Edit a raster dataset.
    Positional arguments:
      --dataset <DATASET>                                         Dataset (to be updated in-place, unless --auxiliary) [required] [not available in pipelines]
    Common Options:
      -h, --help                                                  Display help message and exit
      --json-usage                                                Display usage as JSON document and exit
      --config <KEY>=<VALUE>                                      Configuration option [may be repeated]
      -q, --quiet                                                 Quiet mode (no progress bar or warning message) [not available in pipelines]
    Options:
      --auxiliary                                                 Ask for an auxiliary .aux.xml file to be edited [not available in pipelines]
      -b, --band <BAND>                                           Active band (1-based index)
      --crs <CRS>                                                 Override CRS (without reprojection)
      --bbox <BBOX>                                               Bounding box as xmin,ymin,xmax,ymax
      --nodata <NODATA>                                           Assign a specified nodata value to output bands ('none', numeric value, 'nan', 'inf', '-inf')
      --color-interpretation <[all|<BAND>=]<COLOR-INTEPRETATION>  Set band color interpretation [may be repeated]
      --color-map <COLOR-MAP>                                     Color map filename
                                                                  Mutually exclusive with --unset-color-table
      --scale <[<BAND>=]<SCALE>                                   Override band scale factor [may be repeated]
      --offset <[<BAND>=]<OFFSET>                                 Override band offset constant [may be repeated]
      --metadata <KEY>=<VALUE>                                    Add/update dataset metadata item [may be repeated]
      --unset-color-table                                         Unset color table on 1st band or the one specified with --band
                                                                  Mutually exclusive with --color-map
      --unset-metadata <KEY>                                      Remove dataset metadata item(s) [may be repeated]
      --unset-metadata-domain <DOMAIN>                            Remove dataset metadata domain(s) [may be repeated]
      --gcp <GCP>                                                 Add ground control point, formatted as pixel,line,easting,northing[,elevation], or @filename [may be repeated]
      --stats                                                     Compute statistics, using all pixels
                                                                  Mutually exclusive with --approx-stats
      --approx-stats                                              Compute statistics, using a subset of pixels
                                                                  Mutually exclusive with --stats
      --hist                                                      Compute histogram
    Advanced Options:
      --oo, --open-option <KEY>=<VALUE>                           Open options [may be repeated] [not available in pipelines]

DESCRIPTION

gdal raster edit can be used to edit a raster dataset.

This subcommand is also available as a potential step of gdal raster pipeline

PROGRAM-SPECIFIC OPTIONS

--approx-stats
    Compute raster band statistics for all bands. They may be computed based on overviews or a subset of all tiles. Useful if you are in a hurry and don't need precise stats.

    NOTE: This option is not available when the command is part of a pipeline.

--auxiliary
    Force opening the dataset in read-only mode. For drivers that implement the Persistent Auxiliary Metadata (PAM) mechanism, changes will be saved in an auxiliary side car file of extension .aux.xml.

-b, --band <BAND>
    Added in version 3.13.

    Index (starting at 1) of the band to which the following options apply: --color-map, --unset-color-table. Defaults to one if not specified.

--bbox <xmin>,<ymin>,<xmax>,ymax>
    Override the spatial bounding box, in CRS units, without reprojecting or subsetting. 'x' is longitude values for geographic CRS and easting for projected CRS. 'y' is latitude values for geographic CRS and northing for projected CRS.

--color-map <COLOR-MAP>
    Added in version 3.13.

    Color map filename containing the association between various raster values and the corresponding wished color to set on the first band, or the one specified by --band. This can be either a GDAL dataset with a color table attached to its first band or a text-based color configuration

    The text-based color configuration file generally contains 4 columns per line: the raster value and the corresponding Red, Green, Blue component (between 0 and 255). The raster value mus be an integer value between 0 and 65535. The raster value can also be expressed as a percentage: 0% being the minimum value found in the raster, 100% the maximum value.

    An extra column can be optionally added for the alpha component. If it is not specified, full opacity (255) is assumed.

    Various field separators are accepted: comma, tabulation, spaces, ':'.

    Common colors used by GRASS can also be specified by using their name, instead of the RGB triplet. The supported list is: white, black, red, green, blue, yellow, magenta, cyan, aqua, grey/gray, orange, brown, purple/violet and indigo. GMT .cpt palette files are also supported (COLOR_MODEL = RGB only).

    Note: the syntax of the color configuration file is derived from the one supported by GRASS r.colors utility. ESRI HDR color table files (.clr) also match that syntax. The alpha component and the support of tab and comma as separators are GDAL specific extensions.

    For example:

        3500   white
        2500   235:220:175
        50%   190 185 135
        700    240 250 150
        0      50  180  50

--crs <CRS>
    Override CRS, without reprojecting.

    The coordinate reference systems that can be passed are anything supported by the OGRSpatialReference::SetFromUserInput() call, which includes EPSG Projected, Geographic or Compound CRS (i.e. EPSG:4296), a well known text (WKT) CRS definition, PROJ.4 declarations, or the name of a .prj file containing a WKT CRS definition.

    null or none can be specified to unset an existing CRS.

    Note that the spatial extent is also left unchanged.

--dataset <DATASET>
    Dataset name, to be updated in-place, unless --auxiliary is set. Required.

--gcp <GCP>
    Added in version 3.12.

    Set ground control point(s), replacing any existing GCPs. Each GCP must be formatted as a string "pixel,line,easting,northing" or "pixel,line,easting,northing,elevation". Each GCP must be specified with a --gcp argument.

    It is also possible to provide a single --gcp argument whose value is the filename of a vector dataset, prefixed with @. This dataset must have a single layer with the following required fields column, line, x, y, and optionally id, info and z.

--hist
    Compute histogram information for all bands.

    NOTE: This option is not available when the command is part of a pipeline.

--color-interpretation [all|<BAND>=]<COLOR-INTERPRETATION>
    Added in version 3.13.

    Set band color interpretation. May be repeated.

    <COLOR-INTERPRETATION> is one of red, green, blue, alpha, gray, undefined, pan, coastal, rededge, nir, swir, mwir or lwir.

    Several syntaxes are supported:

•   specifying all=<COLOR-INTERPRETATION>: set the color interpretation on all bands.

•   specifying as many <COLOR-INTERPRETATION> as there are bands, starting from band 1 to the last band.

•   specifying the color interpretation on a subset of bands with <BAND>=<COLOR-INTERPRETATION> where band is the band number starting at 1.

--scale [<BAND>=]<SCALE>
    Added in version 3.13.

    Set band scale factor. May be repeated.

    Several syntaxes are supported:

•   specifying one single <SCALE>: set the scale on all bands.

•   specifying as many <SCALE> as there are bands, starting from band 1 to the last band.

•   specifying the scale on a subset of bands with <BAND>=<SCALE> where band is the band number starting at 1.

--offset [<BAND>=]<OFFSET>
    Added in version 3.13.

    Set band offset constant. May be repeated.

    Several syntaxes are supported:

•   specifying one single <OFFSET>: set the offset on all bands.

•   specifying as many <OFFSET> as there are bands, starting from band 1 to the last band.

•   specifying the offset on a subset of bands with <BAND>=<OFFSET> where band is the band number starting at 1.

--metadata <KEY>=<VALUE>
    Add/update metadata item, at the dataset level. May be repeated.

--nodata <value>
    Override nodata value.

    null or none can be specified to unset an existing nodata value.

--stats
    Compute raster band statistics for all bands.

--unset-color-table
    Added in version 3.13.

    Remove the color table associated to the first band, or the one specified by --band.

--unset-metadata <KEY>
    Remove metadata item, at the dataset level. May be repeated.

--unset-metadata-domain <DOMAIN>
    Added in version 3.12.

    Remove metadata domain, at the dataset level. May be repeated.

STANDARD OPTIONS

--oo, --open-option <NAME>=<VALUE>
    Dataset open option (format specific).

    May be repeated.

RETURN STATUS CODE

The program returns status code 0 in case of success, and non-zero in case of error (non-blocking errors emitted as warnings are considered as a successful execution).

EXAMPLES

  Example 1: Override (without reprojecting) the CRS of a dataset

    $ gdal raster edit --crs=EPSG:32632 my.tif

  Example 2: Override (without reprojecting or subsetting) the bounding box of a dataset

    $ gdal raster edit --bbox=2,49,3,50 my.tif

  Example 3: Add a metadata item

    $ gdal raster edit --metadata AUTHOR=EvenR my.tif

  Example 4: Remove a metadata item

    $ gdal raster edit --unset-metadata AUTHOR my.tif

  Example 5: Add 2 ground control point (GCP) for (column=0,line=0,X=2,Y=49) and (column=50,line=100,X=3,Y=48)

    $ gdal raster edit --gcp 0,0,2,49 --gcp 50,100,3,48 my.tif

  Example 6: Add ground control point (GCP) from gcps.csv, that must have fields named column, line, x and y.

    $ gdal raster edit --gcp @gcps.csv my.tif

  Example 7: Set red, green, blue, NIR color interpretation to a 4-band dataset

    $ gdal raster edit --color-interpretation red,green,blue,nir 4band.tif

AUTHOR
Even Rouault <even.rouault@spatialys.com>

COPYRIGHT
1998-2026