Skip to content

r.fusion

image fusion, generalized pan-sharpening

r.fusion [-r] input=name highres=name [method=string] output=name [--overwrite] [--verbose] [--quiet] [--qq] [--ui]

Example:

r.fusion input=name highres=name output=name

grass.script.run_command("r.fusion", input, highres, method="difference", output, flags=None, overwrite=False, verbose=False, quiet=False, superquiet=False)

Example:

gs.run_command("r.fusion", input="name", highres="name", output="name")

Parameters

input=name [required]
    Low-resolution raster to be enhanced
highres=name [required]
    High-resolution raster with spatial detail
method=string
    Solution method: Finite Diff. or Superpos. of analytical sol'ns
    Allowed values: difference, proportion
    Default: difference
output=name [required]
    Name for output raster map
-r
    Restrict output value range to input value range
    Recommended for imagery with a defined valid value range, e.g. [0, 255]
--overwrite
    Allow output files to overwrite existing files
--help
    Print usage summary
--verbose
    Verbose module output
--quiet
    Quiet module output
--qq
    Very quiet module output
--ui
    Force launching GUI dialog

input : str, required
    Low-resolution raster to be enhanced
    Used as: input, raster, name
highres : str, required
    High-resolution raster with spatial detail
    Used as: input, raster, name
method : str, optional
    Solution method: Finite Diff. or Superpos. of analytical sol'ns
    Allowed values: difference, proportion
    Default: difference
output : str, required
    Name for output raster map
    Used as: output, raster, name
flags : str, optional
    Allowed values: r
    r
        Restrict output value range to input value range
        Recommended for imagery with a defined valid value range, e.g. [0, 255]
overwrite: bool, optional
    Allow output files to overwrite existing files
    Default: False
verbose: bool, optional
    Verbose module output
    Default: False
quiet: bool, optional
    Quiet module output
    Default: False
superquiet: bool, optional
    Very quiet module output
    Default: False

DESCRIPTION

r.fusion enhances the resolution of a raster map by using spatial detail of a high-resolution map. The actual values in the resultant output map correspond to the input map while the spatial detail corresponds to the high-resolution map. The effect is similar to pan-sharpening, but the method can be applied more generally, not only to imagery but also to climatological data such as temperature or precipitation.

NOTES

Two different methods are available with the method option: difference and proportion.

The difference method uses the formula

A - B + B = A

more specifically

highres(Alowres - Blowres) + Bhighres = Ahighres

where highres() is a function to interpolate the differences. Here, r.resamp.filter is used for interpolation.

The proportion method is suitable for e.g. precipitation where zero precipition must stay zero precipition, and uses the formula

A / B * B = A

more specifically

highres(Alowres / Blowres) * Bhighres = Ahighres

Again, highres() is a function to interpolate the proportions, and r.resamp.filter is used for interpolation. For the proportion method, all values in the high-resolution B map must be > 0.

SEE ALSO

r.resamp.filter

AUTHOR

Markus Metz, mundialis

SOURCE CODE

Available at: r.fusion source code (history)
Latest change: Thursday Feb 20 13:02:26 2025 in commit 53de819