pkcomposite1
Program to mosaic and composite geo-referenced images
Usage
FCpkcompositeF [0]
FC-iF
[0]
input
[FC-iF
[0]
input]
FC-oF
[0]
output
[options]
[advanced
options]
Overview
pkcomposite can be used to {mosaic} and {composite} multiple (georeferenced) raster datasets. A mosaic can merge images with different geographical extents into a single larger image. Compositing resolves the overlapping pixels according to some rule (e.g, the median of all overlapping pixels). This utility is complementary to GDAL, which currently does not support a composite step. Input datasets can have different bounding boxes and spatial resolutions.
Example: Calculate the maximum NDVI composite of two multispectral input images (e.g., red is band 0 and near infrared is band 1)
FC
pkcomposite -i input1.tif -i input2.tif -o output.tif -cr maxndvi -cb 0 -cb 1
F[0]
Example: Calculate the minimum nadir composite of two input images, where the forth band (b=3) contains the view zenith angle
FC
pkcomposite -i input1.tif -i input2.tif -o minzenith.tif -cr minband -cb 3
F[0]
Example: Calculate the minimum of two input images in all bands
FC
pkcomposite -i input1.tif -i input2.tif -o minimum.tif -cr minallbands
F[0]
Options
- FC
-iF[0] filename, FC--inputF[0] filename -
Input image file(s). If input contains multiple images, a multi-band output is created
- FC
-oF[0] filename, FC--outputF[0] filename -
Output image file
- FC
-bF[0] band, FC--bandF[0] band -
band index(es) to crop (leave empty if all bands must be retained)
- FC
-dxF[0] xres, FC--dxF[0] xres -
Output resolution in x (in meter) (empty: keep original resolution)
- FC
-dyF[0] yres, FC--dyF[0] yres -
Output resolution in y (in meter) (empty: keep original resolution)
- FC
-eF[0] vector, FC--extentF[0] vector -
get boundary from extent from polygons in vector file
- FC
-cutF[0], FC--crop_to_cutlineF[0] -
Crop the extent of the target dataset to the extent of the cutline
- FC
-eoF[0] options, FC--eoF[0] options -
Special extent options controlling rasterization: FCATTRIBUTE|CHUNKYSIZE|ALL_TOUCHED|BURN_VALUE_FROM|MERGE_ALGF[0], e.g., FC
-eoF[0] FCATTRIBUTE=F[0]fieldname
- FC
-mF[0] mask, FC--maskF[0] mask -
Use the first band of the specified file as a validity mask (0 is nodata)
- FC
-msknodataF[0] value, FC--msknodataF[0] value -
Mask value not to consider for composite
- FC
-mskbandF[0] value, FC--mskbandF[0] value -
Mask band to read (0 indexed)
- FC
-ulxF[0] ULX, FC--ulxF[0] ULX -
Upper left x value bounding box
- FC
-ulyF[0] ULY, FC--ulyF[0] ULY -
Upper left y value bounding box
- FC
-lrxF[0] LRX, FC--lrxF[0] LRX -
Lower right x value bounding box
- FC
-lryF[0] LRY, FC--lryF[0] LRY -
Lower right y value bounding box
- FC
-crF[0] rule, FC--cruleF[0] rule -
Composite rule (overwrite, maxndvi, maxband, minband, mean, mode (only for byte images), median, sum
- FC
-cbF[0] band, FC--cbF[0] band -
band index used for the composite rule (e.g., for ndvi, use FC
--cband=0F[0] FC--cband=1F[0] with 0 and 1 indices for red and nir band respectively
- FC
-srcnodataF[0] value, FC--srcnodataF[0] value -
invalid value for input image
- FC
-bndnodataF[0] band, FC--bndnodataF[0] band -
Bands in input image to check if pixel is valid (used for srcnodata, min and max options)
- FC
-minF[0] value, FC--minF[0] value -
flag values smaller or equal to this value as invalid.
- FC
-maxF[0] value, FC--maxF[0] value -
flag values larger or equal to this value as invalid.
- FC
-dstnodataF[0] value, FC--dstnodataF[0] value -
nodata value to put in output image if not valid or out of bounds.
- FC
-rF[0] resampling_method, FC--resampling-methodF[0] resampling_method -
Resampling method (near: nearest neighbor, bilinear: bi-linear interpolation).
- FC
-otF[0] type, FC--otypeF[0] type -
Data type for output image ({Byte / Int16 / UInt16 / UInt32 / Int32 / Float32 / Float64 / CInt16 / CInt32 / CFloat32 / CFloat64}). Empty string: inherit type from input image
- FC
-ofF[0] GDALformat, FC--oformatF[0] GDALformat -
Output image format (see also gdal_translate(1)). Empty string: inherit from input image
- FC
-coF[0] NAME=VALUE, FC--coF[0] NAME=VALUE -
Creation option for output file. Multiple options can be specified.
- FC
-a_srsF[0] EPSG:number, FC--a_srsF[0] EPSG:number -
Override the spatial reference for the output file (leave blank to copy from input file, use epsg:3035 to use European projection and force to European grid)
- FC
-vF[0], FC--verboseF[0] -
verbose
Advanced options
- FC
-fileF[0], FC--fileF[0] -
write number of observations (1) or sequence nr of selected file (2) for each pixels as additional layer in composite. Default: 0
- FC
-wF[0] weight, FC--weightF[0] weight -
Weights (type: short) for the composite, use one weight for each input file in same order as input files are provided). Use value 1 for equal weights.
- FC
-cF[0] name, FC--classF[0] name -
classes for multi-band output image: each band represents the number of observations for one specific class. Use value 0 for no multi-band output image.
- FC
-ctF[0] filename, FC--ctF[0] filename -
colour table in ASCII format having 5 columns: id R G B ALFA (0: transparent, 255: solid)
- FC
-alignF[0], FC--alignF[0] -
Align output bounding box to first input image
- FC
-scaleF[0] value, FC--scaleF[0] value -
Scale value FCoutput=scale*input+offsetF[0]
- FC
-offF[0] value, FC--offsetF[0] value -
Offset value FCoutput=scale*input+offsetF[0]
- FC
-dF[0] description, FC--descriptionF[0] description -
Set image description
Examples
Create a composit from two input images. If images overlap, keep only last image (default rule)
FC
pkcomposite -i input1.tif -i input2.tif -o output.tif
F[0]
Create a composit from two input images. Values of 255 in band 1 (starting from 0) are masked as invalid. Typically used when second band of input image is a cloud mask
FC
pkcomposite -i input1.tif -i input2.tif -srcnodata 255 -bndnodata 1 -dstnodata 0 -o output.tif
F[0]
Create a maximum NDVI (normalized difference vegetation index) composit. Values of 255 in band 0 are masked as invalid and flagged as 0 if no other valid coverage. Typically used for (e.g., MODIS) images where red and near infrared spectral bands are stored in bands 0 and 1 respectively. In this particular case, a value of 255 in the first input band indicates a nodata value (e.g., cloud mask is coded within the data values).
FC
pkcomposite -i input1.tif -i input2.tif -cr maxndvi -rb 0 -rb 1 -srcnodata 255 -bndnodata 0 -dstnodata 0 -o output.tif
F[0]
Create a composite image using weighted mean: output=(3/4*input1+6/4*input2+3/4*input2)/3.0
FC
pkcomposite -i input1.tif -i input2.tif -i input3.tif -o output.tif -cr mean -w 0.75 -w 1.5 -w 0.75
F[0]
Create a median composit of all GTiff images found in current directory that cover (at least part of) the image FCcoverage.tifF[0]. Values smaller or equal to 0 are set as nodata 0 (default value for FC-dstnodataF[0])
FC
pkcomposite -i large.tif $(for IMAGE in *.tif;do pkinfo -i $IMAGE --cover $(pkinfo -i coverage.tif -bb);done) -cr median -min 0 -o output.tif
F[0]
Faq
Q1. First question
A1. For individual invalid value(s) in input image, use FC-srcnodataF[0]
Usage: use unique value for each invalid bands set in FC--bndnodataF[0] or use a single value that will be applied to all invalid bands
Example:
FC
pkcomposite -i input1.tif -i input2.tif -o output.tif -srcnodata 0 -srcnodata 255 -bndnodata 0 -bndnodata 1
F[0]
will consider 0 in band 0 and 255 in band 1 of input images as no value
FC
pkcomposite -i input1.tif -i input2.tif -o output.tif -srcnodata 0 -bndnodata 0 -bndnodata 1
F[0]
will consider 0 in both bands 0 and 1 of input images as no value
For range(s) of invalid values in input images: use FC-minF[0] (FC--minF[0]) and FC-maxF[0] (FC--maxF[0]) Usage: use unique range set for each invalid bands set in FC-bndnodataF[0]
Example:
FC
pkcomposite -i input1.tif -i input2.tif -o output.tif -min 0 -max 200 -min 0 -max 2 -bndnodata 0 -bndnodata 1
F[0]
will consider all negative values in band 0 and 1 of input images as invalid. Values larger or equal to 200 in band 0 will be invalid, as well as values larger or equal to 2 in band 1
Q2. If I take the mean value as composit rule for multi-band input images, will the output image contain the mean value of overlapping images in each band?
A2. Yes
Releases
5 releases since Debian 9 (Stretch); the text changed 4 times.