Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GDAL-RASTER-STACK(1)		     GDAL		  GDAL-RASTER-STACK(1)

NAME
       gdal-raster-stack - Combine together input bands	into a multi-band out-
       put, either virtual (VRT) or materialized

       Added in	version	3.11.

SYNOPSIS
	  Usage: gdal raster stack [OPTIONS] [<INPUTS>...] <OUTPUT>

	  Combine together input bands into a multi-band output, either	virtual	(VRT) or materialized.

	  Positional arguments:
	    -i,	--input	<INPUTS>					    Input raster datasets (or specify a	@<filename> to point to	a file containing filenames) [1.. values]
	    -o,	--output <OUTPUT>					    Output raster dataset (created by algorithm) [required]

	  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]
	    --progress							    Display progress bar

	  Options:
	    -f,	--of, --format,	--output-format	<OUTPUT-FORMAT>		    Output format ("GDALG" allowed)
	    --co, --creation-option <KEY>=<VALUE>			    Creation option [may be repeated]
	    -b,	--band <BAND>						    Input band(s) (1-based index) [may be repeated]
	    --overwrite							    Whether overwriting	existing output	is allowed
	    --resolution <xres>,<yres>|same|average|common|highest|lowest>  Target resolution (in destination CRS units) (default: same)
	    --bbox <BBOX>						    Target bounding box	as xmin,ymin,xmax,ymax (in destination CRS units)
	    --target-aligned-pixels					    Round target extent	to target resolution
	    --src-nodata <SRC-NODATA>					    Set	nodata values for input	bands. [1.. values]
	    --dst-nodata <DST-NODATA>					    Set	nodata values at the destination band level. [1.. values]
	    --hide-nodata						    Makes the destination band not report the NoData.

DESCRIPTION
       This  program  combine  together	 input bands from GDAL datasets	into a
       dataset,	that can be  either  a	virtual	 stack	in  the	 VRT  (Virtual
       Dataset)	 format, or in a more conventional raster format such as GeoT-
       IFF.

       All bands of each input file are	added as separate output bands,	unless
       -b is specified to select a subset of them.

       The list	of input GDAL datasets can be specified	at the end of the com-
       mand line or put	in a text file (one filename per line) for  very  long
       lists.	Wildcards  '*',	 '?' or	'['] of	VSIGlob() can be used, even on
       files located  on  network  file	 systems  such	as  /vsis3/,  /vsigs/,
       /vsiaz/,	etc.

       The following options are available:

       -f, --of, --format, --output-format <OUTPUT-FORMAT>
	      Which  output  raster format to use. Allowed values may be given
	      by gdal --formats	| grep raster |	grep rw	| sort

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

	      May be repeated.

	      The creation options available vary by format driver,  and  some
	      simple  formats  have  no	creation options at all. A list	of op-
	      tions 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 cre-
	      ation options for	each format.

       --overwrite
	      Allow program to overwrite  existing  target  file  or  dataset.
	      Otherwise,  by  default,	gdal  errors out if the	target file or
	      dataset already exists.

       -b <band>
	      Select an	input <band> to	be processed. Bands are	numbered  from
	      1.   If  input bands not set all bands will be added to the out-
	      put.  Multiple -b	switches may be	used to	select a set of	 input
	      bands.

       --resolution {<xres,yres>|same|highest|lowest|average}
	      In  case	the resolution of all input files is not the same, the
	      --resolution flag	enables	the user to control the	way the	output
	      resolution is computed.

	      same, the	default, checks	that all source	rasters	have the  same
	      resolution and errors out	when this is not the case.

	      highest will pick	the smallest values of pixel dimensions	within
	      the set of source	rasters.

	      lowest  will  pick the largest values of pixel dimensions	within
	      the set of source	rasters.

	      average will compute an average of pixel dimensions  within  the
	      set of source rasters.

	      common  determines  the  greatest	 common	 divisor of the	source
	      pixel dimensions,	e.g. 0.2 for source pixel  dimensions  of  0.4
	      and 0.6.

	      <xres>,<yres>.  The  values  must	 be expressed in georeferenced
	      units.  Both must	be positive values.

       --bbox <xmin>,<ymin>,<xmax>,<ymax>
	      Set georeferenced	extents	of output file.	The values must	be ex-
	      pressed in georeferenced units.  If not specified, the extent of
	      the output is the	minimum	bounding box  of  the  set  of	source
	      rasters.	Pixels within the extent of the	output but not covered
	      by  a source raster will be read as valid	pixels with a value of
	      zero unless a NODATA value is specified using --dst-nodata or an
	      alpha mask band is added with --add-alpha.

       --target-aligned-pixels
	      (target aligned pixels) align the	coordinates of the  extent  of
	      the output file to the values of the --resolution, such that the
	      aligned  extent  includes	 the  minimum extent.  Alignment means
	      that xmin	/ resx,	ymin / resy, xmax / resx and ymax /  resy  are
	      integer values.

       --src-nodata <value>[,<value>]...
	      Set  nodata values for input bands (different values can be sup-
	      plied for	each band).  If	the option is not specified,  the  in-
	      trinsic  nodata settings on the source datasets will be used (if
	      they exist). The value set by this option	is written in the  NO-
	      DATA element of each ComplexSource element.

       --dst-nodata <value>[,<value>]...
	      Set nodata values	at the output band level (different values can
	      be supplied for each band).  If more than	one value is supplied,
	      all  values  should  be quoted to	keep them together as a	single
	      operating	system argument. If the	option is not  specified,  in-
	      trinsic  nodata  settings	 on the	first dataset will be used (if
	      they exist). The value set by this option	is written in the  No-
	      DataValue	 element of each VRTRasterBand element.	Use a value of
	      None to ignore intrinsic nodata settings on the source datasets.

       --hide-nodata
	      Even if any band contains	nodata value, giving this option makes
	      the output band not report the NoData. Useful when you  want  to
	      control the background color of the dataset. By using along with
	      the  --add-alpha option, you can prepare a dataset which doesn't
	      report nodata value but is transparent in	areas with no data.

GDALG OUTPUT (ON-THE-FLY / STREAMED DATASET)
       This program supports serializing the command line as a JSON file using
       the GDALG output	format.	 The resulting file can	then be	 opened	 as  a
       raster dataset using the	GDALG: GDAL Streamed Algorithm driver, and ap-
       ply the specified pipeline in a on-the-fly / streamed way.

EXAMPLES
   Example 1: Make a RGB virtual stack from 3 single-band input	files
	  gdal raster stack --separate red.tif green.tif blue.tif rgb.tif

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

COPYRIGHT
       1998-2025

				 Jul 12, 2025		  GDAL-RASTER-STACK(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gdal-raster-stack&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help