Provided by: gdal-bin_3.8.4+dfsg-3ubuntu3_amd64 bug

NAME

       gdal_translate - Converts raster data between different formats.

SYNOPSIS

          gdal_translate [--help] [--help-general] [--long-usage]
             [-ot {Byte/Int8/Int16/UInt16/UInt32/Int32/UInt64/Int64/Float32/Float64/
                   CInt16/CInt32/CFloat32/CFloat64}] [-strict]
             [-if <format>]... [-of <format>]
             [-b <band>] [-mask <band>] [-expand {gray|rgb|rgba}]
             [-outsize <xsize>[%]|0 <ysize>[%]|0] [-tr <xres> <yres>]
             [-ovr <level>|AUTO|AUTO-<n>|NONE]
             [-r {nearest,bilinear,cubic,cubicspline,lanczos,average,mode}]
             [-unscale] [-scale[_bn] [<src_min> <src_max> [<dst_min> <dst_max>]]]... [-exponent[_bn] <exp_val>]...
             [-srcwin <xoff> <yoff> <xsize> <ysize>] [-epo] [-eco]
             [-projwin <ulx> <uly> <lrx> <lry>] [-projwin_srs <srs_def>]
             [-a_srs <srs_def>] [-a_coord_epoch <epoch>]
             [-a_ullr <ulx> <uly> <lrx> <lry>] [-a_nodata <value>]
             [-a_gt <gt0> <gt1> <gt2> <gt3> <gt4> <gt5>]
             [-a_scale <value>] [-a_offset <value>]
             [-nogcp] [-gcp <pixel> <line> <easting> <northing> [<elevation>]]...
             |-colorinterp{_bn} {red|green|blue|alpha|gray|undefined}]
             |-colorinterp {red|green|blue|alpha|gray|undefined},...]
             [-mo <META-TAG>=<VALUE>]... [-q] [-sds]
             [-co <NAME>=<VALUE>]... [-stats] [-norat] [-noxmp]
             [-oo <NAME>=<VALUE>]...
             <src_dataset> <dst_dataset>

DESCRIPTION

       The  gdal_translate  utility  can  be  used to convert raster data between different formats, potentially
       performing some operations like subsettings, resampling, and rescaling pixels in the process.

       --help Show this help message and exit

       --help-general
              Gives a brief usage message for the generic GDAL commandline options and exit.

       -ot <type>
              Force the output image bands to have a specific data type supported by the driver,  which  may  be
              one  of  the following: Byte, Int8, UInt16, Int16, UInt32, Int32, UInt64, Int64, Float32, Float64,
              CInt16, CInt32, CFloat32 or CFloat64.

       -strict
              Don't be forgiving of mismatches and lost data when translating to the output format.

       -if <format>
              Format/driver name to be attempted to open the input file(s). It is  generally  not  necessary  to
              specify  it,  but  it  can be used to skip automatic driver detection, when it fails to select the
              appropriate driver.  This option can be  repeated  several  times  to  specify  several  candidate
              drivers.   Note  that  it  does  not  force those drivers to open the dataset. In particular, some
              drivers have requirements on file extensions.

              New in version 3.2.

       -of <format>
              Select the output format. Starting with GDAL 2.3, if not specified, the format is guessed from the
              extension (previously was GTiff). Use the short format name.

       -b <band>
              Select an input band band for output. Bands are numbered from 1.  Multiple -b switches may be used
              to select a set of input bands to write to the output file, or to reorder bands. band can also  be
              set to "mask,1" (or just "mask") to mean the mask band of the first band of the input dataset.

       -mask <band>
              Select  an input band band to create output dataset mask band. Bands are numbered from 1. band can
              be set to "none" to avoid copying the global mask of the input dataset if it exists. Otherwise  it
              is copied by default ("auto"), unless the mask is an alpha channel, or if it is explicitly used to
              be  a  regular  band  of the output dataset ("-b mask"). band can also be set to "mask,1" (or just
              "mask") to mean the mask band of the 1st band of the input dataset.

       -expand gray|rgb|rgba
              To expose a dataset with 1 band with a color table as a dataset with 3 (RGB) or  4  (RGBA)  bands.
              Useful  for  output  drivers  such  as JPEG, JPEG2000, MrSID, ECW that don't support color indexed
              datasets. The 'gray' value enables to expand a dataset with a color table that only contains  gray
              levels to a gray indexed dataset.

       -outsize <xsize>[%]|0 <ysize>[%]|0
              Set  the  size of the output file.  Outsize is in pixels and lines unless '%' is attached in which
              case it is as a fraction of the input image size.  If one of the 2 values is set to 0,  its  value
              will be determined from the other one, while maintaining the aspect ratio of the source dataset.

       -tr <xres> <yres>
              set target resolution. The values must be expressed in georeferenced units.  Both must be positive
              values. This is mutually exclusive with -outsize, -a_ullr, and -a_gt.

       -ovr {<level>|AUTO|AUTO-<n>|NONE}
              New in version 3.6.

              To specify which overview level of source file must be used. The default choice, AUTO, will select
              the  overview  level  whose resolution is the closest to the target resolution. Specify an integer
              value (0-based, i.e. 0=1st overview level) to select a particular level. Specify AUTO-n where n is
              an integer greater or equal to 1, to select an overview level below the AUTO one. Or specify  NONE
              to force the base resolution to be used (can be useful if overviews have been generated with a low
              quality resampling method, and a higher quality resampling method is specified with -r.

              When -ovr is specified to an integer value, and none of -outsize and -tr is specified, the size of
              the overview will be used as the output size.

              When -ovr is specified, values of -srcwin, when specified, should be expressed as pixel offset and
              size of the full resolution source dataset.  Similarly when using -outsize with percentage values,
              they refer to the size of the full resolution source dataset.

       -r {nearest|bilinear|cubic|cubicspline|lanczos|average|rms|mode}
              Select a resampling algorithm.

              nearest (default) applies a nearest neighbour (simple sampling) resampler

              average  computes  the average of all non-NODATA contributing pixels. Starting with GDAL 3.1, this
              is a weighted average taking into account properly the weight of source  pixels  not  contributing
              fully to the target pixel.

              rms computes the root mean squared / quadratic mean of all non-NODATA contributing pixels (GDAL >=
              3.3)

              bilinear applies a bilinear convolution kernel.

              cubic applies a cubic convolution kernel.

              cubicspline applies a B-Spline convolution kernel.

              lanczos applies a Lanczos windowed sinc convolution kernel.

              mode selects the value which appears most often of all the sampled points.

       -scale [<src_min> <src_max> [<dst_min> <dst_max>]]
              Rescale the input pixels values from the range src_min to src_max to the range dst_min to dst_max.
              If  omitted  the  output  range is 0 to 255.  If omitted the input range is automatically computed
              from the source dataset, in its whole (not just the window of interest potentially specified  with
              -srcwin  or  -projwin).  This  may  be a slow operation on a large source dataset, and if using it
              multiple times for several gdal_translate invocation, it might  be  beneficial  to  call  gdalinfo
              -stats  {source_dataset}  priorly  to  precompute statistics, for formats that support serializing
              statistics computations (GeoTIFF, VRT...)  Note that the values specified after  -scale  are  only
              used to compute a scale and offset to apply to the input raster values. In particular, src_min and
              src_max  are  not  used  to clip input values.  -scale can be repeated several times (if specified
              only once, it also applies to all bands of  the  output  dataset),  so  as  to  specify  per  band
              parameters.  It  is  also  possible  to use the "-scale_bn" syntax where bn is a band number (e.g.
              "-scale_2" for the 2nd band of the output dataset) to specify the parameters  of  one  or  several
              specific bands.

       -exponent <exp_val>
              To  apply  non-linear scaling with a power function. exp_val is the exponent of the power function
              (must be positive). This option must be used with the  -scale  option.  If  specified  only  once,
              -exponent  applies  to  all  bands  of the output image. It can be repeated several times so as to
              specify per band parameters. It is also possible to use the "-exponent_bn" syntax where  bn  is  a
              band  number (e.g. "-exponent_2" for the 2nd band of the output dataset) to specify the parameters
              of one or several specific bands.

       -unscale
              Apply the scale/offset metadata for the bands to convert scaled values to unscaled values.  It  is
              also  often  necessary  to  reset  the output datatype with the -ot switch.  The unscaled value is
              computed from the scaled raw value with the following formula:

                                   {unscaled\_value} = {scaled\_value} * {scale} + {offset}

       -srcwin <xoff> <yoff> <xsize> <ysize>
              Selects a subwindow from the source image for copying based on pixel/line location.

       -projwin <ulx> <uly> <lrx> <lry>
              Selects a subwindow from the source image for copying (like -srcwin) but with the corners given in
              georeferenced coordinates (by default expressed in the SRS of the dataset.  Can  be  changed  with
              -projwin_srs).

              NOTE:
                 In GDAL 2.1.0 and 2.1.1, using -projwin with coordinates not aligned with pixels will result in
                 a  sub-pixel  shift.  This  has  been  corrected  in later versions. When selecting non-nearest
                 neighbour resampling, starting with GDAL 2.1.0, sub-pixel  accuracy  is  however  used  to  get
                 better results.

       -projwin_srs <srs_def>
              Specifies  the SRS in which to interpret the coordinates given with -projwin. The <srs_def> may be
              any of the usual GDAL/OGR forms, complete WKT, PROJ.4, EPSG:n or a file containing the WKT.

              WARNING:
                 This does not cause reprojection of the dataset to the specified SRS.

       -epo   (Error when Partially Outside) If this option is  set,  -srcwin  or  -projwin  values  that  falls
              partially outside the source raster extent will be considered as an error. The default behavior is
              to accept such requests, when they were considered as an error before.

       -eco   (Error  when  Completely Outside) Same as -epo, except that the criterion for erroring out is when
              the request falls completely outside the source raster extent.

       -a_srs <srs_def>
              Override the projection for the output file. Can be used with -a_ullr  or  -a_gt  to  specify  the
              extent in this projection.

              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.

              NOTE:
                 No reprojection is done.

       -a_coord_epoch <epoch>
              New in version 3.4.

              Assign  a  coordinate  epoch,  linked with the output SRS. Useful when the output SRS is a dynamic
              CRS.

       -a_scale <value>
              Set band scaling value. No modification of pixel values is done.  Note that the -unscale does  not
              take  into  account  -a_scale.   You may for example specify -scale 0 1 <offset> <offset+scale> to
              apply a (offset, scale) tuple, for the equivalent of the 2 steps: gdal_translate input.tif tmp.vrt
              -a_scale scale -a_offset offset followed by gdal_translate tmp.vrt output.tif -unscale

              New in version 2.3.

       -a_offset <value>
              Set band offset value. No modification of pixel values is done.  Note that the -unscale  does  not
              take  into  account  -a_offset.  You may for example specify -scale 0 1 <offset> <offset+scale> to
              apply a (offset, scale) tuple, for the equivalent of the 2 steps: gdal_translate input.tif tmp.vrt
              -a_scale scale -a_offset offset followed by gdal_translate tmp.vrt output.tif -unscale

              New in version 2.3.

       -a_ullr <ulx> <uly> <lrx> <lry>
              Assign/override the georeferenced bounds of the output file.  This assigns georeferenced bounds to
              the output file, ignoring what would have been derived from the source  file.  So  this  does  not
              cause reprojection to the specified SRS.  This is mutually exclusive with -a_gt

       -a_gt <gt(0)> <gt(1)> <gt(2)> <gt(3)> <gt(4)> <gt(5)>
              Assign/override  the geotransform of the output file.  This assigns the geotransform to the output
              file, ignoring what would have been  derived  from  the  source  file.  So  this  does  not  cause
              reprojection  to  the  specified  SRS. See Geotransform Tutorial.  This is mutually exclusive with
              -a_ullr

              New in version 3.8.

       -a_nodata <value>
              Assign a specified nodata value to output bands. It can be set to none to avoid setting  a  nodata
              value  to the output file if one exists for the source file. Note that, if the input dataset has a
              nodata value, this does not cause pixel values that are equal to that nodata value to  be  changed
              to the value specified with this option.

       -colorinterp_X <red|green|blue|alpha|gray|undefined>
              Override the color interpretation of band X (where X is a valid band number, starting at 1)

              New in version 2.3.

       -colorinterp {red|green|blue|alpha|gray|undefined},...
              Override   the   color   interpretation   of   all   specified  bands.  For  example  -colorinterp
              red,green,blue,alpha for a 4 band output dataset.

              New in version 2.3.

       -mo <META-TAG>=<VALUE>
              Passes a metadata key and value to set on the output dataset if possible.

       -co <NAME>=<VALUE>
              Many formats have one or more optional creation options that can be used  to  control  particulars
              about  the  file  created.  For  instance, the GeoTIFF driver supports creation options to control
              compression, and whether the file should be tiled.

              The creation options available vary by format driver, and some simple  formats  have  no  creation
              options  at all. A list of options supported for a format can be listed with the --formats command
              line option but the documentation for the format is the definitive source of information on driver
              creation options.  See Raster drivers format specific documentation for legal creation options for
              each format.

              In addition to the driver-specific  creation  options,  gdal_translate  (and  GDALTranslate()  and
              GDALCreateCopy()) recognize the following options:

              • APPEND_SUBDATASET=[YES/NO]:  Defaults to NO.

                Can be specified to YES to avoid prior destruction of existing dataset, for drivers that support
                adding several subdatasets (e.g. GTIFF, NITF)

              • COPY_SRC_MDD=[AUTO/YES/NO]:  (GDAL >= 3.8)  Defaults to AUTO.

                Defines  if  metadata domains of the source dataset should be copied to the destination dataset.
                In the default AUTO mode, only "safe" domains will be copied, which include the default metadata
                domain (some drivers may include other domains such as IMD,  RPC,  GEOLOCATION).   When  setting
                YES,   all   domains   will  be  copied  (but  a  few  reserved  ones  like  IMAGE_STRUCTURE  or
                DERIVED_SUBDATASETS).  Currently only recognized by the GTiff, COG, VRT, PNG and JPEG drivers.

                When setting NO, no source metadata will be copied.

              • SRC_MDD=<domain_name>:  (GDAL >= 3.8)

                Defines which source metadata domain should be copied.  This option restricts the list of source
                metadata domains to be copied (it implies COPY_SRC_MDD=YES if it is not set). This option may be
                specified as many times as they are source domains. The default metadata  domain  is  the  empty
                string  ""  ("_DEFAULT_")  may also be used when empty string is not practical).  Currently only
                recognized by the GTiff, COG, VRT, PNG and JPEG drivers.

       -nogcp Do not copy the GCPs in the source dataset to the output dataset.

       -gcp <pixel> <line> <easting> <northing> [<elevation>]
              Add the indicated ground control point to  the  output  dataset.   This  option  may  be  provided
              multiple times to provide a set of GCPs.

       -q     Suppress progress monitor and other non-error output.

       -sds   Copy all subdatasets of this file to individual output files.  Use with formats like HDF that have
              subdatasets.

       -stats Force (re)computation of statistics.

       -norat Do not copy source RAT into destination dataset.

       -noxmp Do  not  copy  the XMP metadata in the source dataset to the output dataset when driver is able to
              copy it.

              New in version 3.2.

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

       <src_dataset>
              The source dataset name. It can be either file name, URL of data source  or  subdataset  name  for
              multi-dataset files.

       <dst_dataset>
              The destination file name.

NODATA / SOURCE VALIDITY MASK HANDLING DURING RESAMPLING

       Masked  values, either identified through a nodata value metadata set on the source band, a mask band, an
       alpha band will not be used during resampling (when using -outsize or -tr).

       The details of how it is taken into account depends on the resampling kernel:

       • for nearest resampling, for each target pixel, one of  the  potential  contributing  source  pixels  is
         selected (in an implementation specific way). Its value is used as it, be it valid or invalid.

       • for bilinear, cubic, cubicspline and lanczos, for each target pixel, the weights of contributing source
         pixels  is  set  to zero to ignore them when they are masked.  There is an extra specificity for cubic:
         given that some of the weights in  the  kernel  are  negative,  such  strategy  could  lead  to  strong
         overshoot/undershoot  when  there is an alternance of valid and invalid pixels. Consequently, if any of
         the horizontal or vertical direction, if the maximum number of valid source pixels in each dimension is
         less than the radius of the resampling kernel, the target pixel is considered as nodata.

       • for the other resampling methods, source pixels contributing to the target pixel are ignored if masked.
         Only the valid ones are taken into account. If there are  none,  the  target  pixel  is  considered  as
         nodata.

C API

       This utility is also callable from C with GDALTranslate().

       New in version 2.1.

EXAMPLES

          gdal_translate -of GTiff -co "TILED=YES" utm.tif utm_tiled.tif

       To create a JPEG-compressed TIFF with internal mask from a RGBA dataset

          gdal_translate rgba.tif withmask.tif -b 1 -b 2 -b 3 -mask 4 -co COMPRESS=JPEG -co PHOTOMETRIC=YCBCR --config GDAL_TIFF_INTERNAL_MASK YES

       To create a RGBA dataset from a RGB dataset with a mask

          gdal_translate withmask.tif rgba.tif -b 1 -b 2 -b 3 -b mask

       Subsetting using -projwin and -outsize:

          gdal_translate -projwin -20037500 10037500 0 0 -outsize 100 100 frmt_wms_googlemaps_tms.xml junk.png

AUTHOR

       Frank Warmerdam <warmerdam@pobox.com>, Silke Reimer <silke@intevation.de>

COPYRIGHT

       1998-2024

                                                  Feb 08, 2024                                 GDAL_TRANSLATE(1)