dwww Home | Manual pages | Find package

GDAL_CALC(1)                         GDAL                         GDAL_CALC(1)

NAME
       gdal_calc - Command line raster calculator with numpy syntax.

SYNOPSIS
          gdal_calc.py --calc=expression --outfile=out_filename [-A filename]
                       [--A_band=n] [-B...-Z filename] [other_options]

       DESCRIPTION

       Command  line raster calculator with numpy syntax. Use any basic arith-
       metic supported by numpy arrays such as +, -, *, and \ along with logi-
       cal operators such as >.  Note that all files must have the same dimen-
       sions (unless extent option is used), but  no  projection  checking  is
       performed (unless projectionCheck option is used).

       --help Show this help message and exit

       -h     The same as --help.

       --calc=expression
              Calculation in numpy syntax using +, -, /, *, or any numpy array
              functions (i.e. log10()).  Multiple --calc options can be listed
              to produce a multiband file (GDAL >= 3.2).

       -A <filename>
              Input  gdal  raster  file,  you  can  use any letter (a-z, A-Z).
              (lower case supported since GDAL 3.3)

              A letter may be repeated (GDAL >= 3.3). The effect  will  be  to
              create  a  3-dim  numpy  array.  In such a case, the calculation
              formula must use this input as a 3-dim array and must  return  a
              2D array (see examples below).  In case the calculation does not
              return a 2D array an error would be generated.

       --A_band=<n>
              Number of raster band for file A (default 1).

       --outfile=<filename>
              Output file to generate or fill.

       --NoDataValue=<value>
              Output NoDataValue (default datatype specific value).  To  indi-
              cate  not  setting a NoDataValue use --NoDataValue=none (GDAL >=
              3.3)

              NOTE:
                 Using the  Python  API:  None  value  will  indicate  default
                 datatype specific value.  'none' value will indicate not set-
                 ting a NoDataValue.

       --hideNoData
              New in version 3.3.

              Ignores the input bands  NoDataValue.   By  default,  the  input
              bands  NoDataValue are not participating in the calculation.  By
              setting this setting - no special treatment will be performed on
              the  input  NoDataValue.  and  they will be participating in the
              calculation as any other value.  The output will not have a  set
              NoDataValue, unless you explicitly specified a specific value by
              setting --NoDataValue=<value>.

       --type=<datatype>
              Output datatype, must be one of [Int32, Int16, Float64,  UInt16,
              Byte, UInt32, Float32].

              NOTE:
                 Despite  the datatype set using --type, when doing intermedi-
                 ate aritmethic operations using operands of  the  same  type,
                 the  operation  result will honor the original datatype. This
                 may lead into unexpected results in the final result.

       --format=<gdal_format>
              GDAL format for output file.

       color-table=<filename>
              Allows specifying a filename of a color table (or  a  ColorTable
              object)  (with  Palette Index interpretation) to be used for the
              output raster.  Supported formats: txt (i.e. like  gdaldem,  but
              color  names  are  not  supported), qlr, qml (i.e. exported from
              QGIS)

       --extent=<option>
              New in version 3.3.

              this option determines how to handle rasters with different  ex-
              tents.   this  option is mutually exclusive with the projwin op-
              tion, which is used for providing a custom extent.  for all  the
              options  below the pixel size (resolution) and SRS (Spatial Ref-
              erence System) of all the input rasters must be the  same.   ig-
              nore  (default)  -  only  the dimensions of the rasters are com-
              pared. if the dimensions do not agree the operation  will  fail.
              fail  -  the  dimensions  and the extent (bounds) of the rasters
              must agree, otherwise the operation will fail.  union - the  ex-
              tent  (bounds)  of the output will be the minimal rectangle that
              contains all the input extents.  intersect - the extent (bounds)
              of the output will be the maximal rectangle that is contained in
              all the input extents.

       --projwin <ulx> <uly> <lrx> <lry>
              New in version 3.3.

              this option provides a custom extent for the output, it is mutu-
              ally exclusive with the extent option.

       --projectionCheck
              New in version 3.3.

              By  default,  no projection checking will be performed.  By set-
              ting this option, if the projection is  not  the  same  for  all
              bands then the operation will fail.

       --creation-option=<option>
              Passes  a creation option to the output format driver.  Multiple
              options may be listed. See format specific documentation for le-
              gal creation options for each format.

       --co=<option>
              The same as creation-option.

       --allBands=[a-z, A-Z]
              Process  all bands of given raster (a-z, A-Z). Requires a single
              calc for all bands.

       --overwrite
              Overwrite output file if it already exists.

       --debug
              Print debugging information.

       --quiet
              Suppress progress messages.

PYTHON OPTIONS
       New in version 3.3.

       The following options are available by using function the python inter-
       face of gdal_calc.  They are not available using the command prompt.

       user_namespace
              A  dictionary of custom functions or other names to be available
              for use in the Calc expression.

       return_ds
              If enabled, the output dataset would be returned from the  func-
              tion and not closed.

       color_table
              Allows specifying a ColorTable object (with Palette Index inter-
              pretation) to be used for the output raster.

EXAMPLE
       Add two files together:

          gdal_calc.py -A input1.tif -B input2.tif --outfile=result.tif --calc="A+B"

       Average of two layers:

          gdal_calc.py -A input1.tif -B input2.tif --outfile=result.tif --calc="(A+B)/2"

       NOTE:
          In the previous example, beware that if A and B inputs  are  of  the
          same  datatype, for example integers, you may need to force the con-
          version of one of the operands before the division operation.

              gdal_calc.py -A input.tif -B input2.tif --outfile=result.tif --calc="(A.astype(numpy.float64) + B) / 2"

       Add three files together (two options with the same result):

          gdal_calc.py -A input1.tif -B input2.tif -C input3.tif --outfile=result.tif --calc="A+B+C"

       New in version 3.3.

          gdal_calc.py -A input1.tif -A input2.tif -A input3.tif --outfile=result.tif --calc="numpy.sum(A,axis=0)".

       Average of three layers (two options with the same result):

          gdal_calc.py -A input1.tif -B input2.tif -C input3.tif --outfile=result.tif --calc="(A+B+C)/3"

       New in version 3.3.

          gdal_calc.py -A input1.tif -A input2.tif -A input3.tif --outfile=result.tif --calc="numpy.average(a,axis=0)".

       Maximum of three layers  (two options with the same result):

          gdal_calc.py -A input1.tif -B input2.tif -C input3.tif --outfile=result.tif --calc="numpy.max((A,B,C),axis=0)"

       New in version 3.3.

          gdal_calc.py -A input1.tif -A input2.tif -A input3.tif --outfile=result.tif --calc="numpy.max(A,axis=0)"

       Set values of zero and below to null:

          gdal_calc.py -A input.tif --outfile=result.tif --calc="A*(A>0)" --NoDataValue=0

       Using logical operator to keep a range of values from input:

          gdal_calc.py -A input.tif --outfile=result.tif --calc="A*logical_and(A>100,A<150)"

       Work with multiple bands:

          gdal_calc.py -A input.tif --A_band=1 -B input.tif --B_band=2 --outfile=result.tif --calc="(A+B)/2" --calc="B*logical_and(A>100,A<150)"

AUTHOR
       Chris Yesson <chris dot yesson at ioz dot ac dot uk>, Etienne  Tourigny
       <etourigny dot dev at gmail dot com>

COPYRIGHT
       1998-2021

                                 Dec 27, 2021                     GDAL_CALC(1)

Generated by dwww version 1.14 on Fri Jan 24 09:35:54 CET 2025.