Skip to content

i.albedo

Computes broad band albedo from surface reflectance.

i.albedo [-mnl8acd] input=name [,name,...] output=name [--overwrite] [--verbose] [--quiet] [--qq] [--ui]

Example:

i.albedo input=name output=name

grass.script.run_command("i.albedo", input, output, flags=None, overwrite=None, verbose=None, quiet=None, superquiet=None)

Example:

gs.run_command("i.albedo", input="name", output="name")

grass.tools.Tools.i_albedo(input, output, flags=None, overwrite=None, verbose=None, quiet=None, superquiet=None)

Example:

tools = Tools()
tools.i_albedo(input="name", output="name")

This grass.tools API is experimental in version 8.5 and expected to be stable in version 8.6.

Parameters

input=name [,name,...] [required]
    Name of input raster map
output=name [required]
    Name for output raster map
-m
    MODIS (7 input bands:1,2,3,4,5,6,7)
-n
    NOAA AVHRR (2 input bands:1,2)
-l
    Landsat 5+7 (6 input bands:1,2,3,4,5,7)
-8
    Landsat 8 (7 input bands:1,2,3,4,5,6,7)
-a
    ASTER (6 input bands:1,3,5,6,8,9)
-c
    Aggressive mode (Landsat)
    Albedo dry run to calculate some water to beach/sand/desert stretching, a kind of simple atmospheric correction
-d
    Soft mode (MODIS)
    Albedo dry run to calculate some water to beach/sand/desert stretching, a kind of simple atmospheric correction
--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 | list[str], required
    Name of input raster map
    Used as: input, raster, name
output : str, required
    Name for output raster map
    Used as: output, raster, name
flags : str, optional
    Allowed values: m, n, l, 8, a, c, d
    m
        MODIS (7 input bands:1,2,3,4,5,6,7)
    n
        NOAA AVHRR (2 input bands:1,2)
    l
        Landsat 5+7 (6 input bands:1,2,3,4,5,7)
    8
        Landsat 8 (7 input bands:1,2,3,4,5,6,7)
    a
        ASTER (6 input bands:1,3,5,6,8,9)
    c
        Aggressive mode (Landsat)
        Albedo dry run to calculate some water to beach/sand/desert stretching, a kind of simple atmospheric correction
    d
        Soft mode (MODIS)
        Albedo dry run to calculate some water to beach/sand/desert stretching, a kind of simple atmospheric correction
overwrite : bool, optional
    Allow output files to overwrite existing files
    Default: None
verbose : bool, optional
    Verbose module output
    Default: None
quiet : bool, optional
    Quiet module output
    Default: None
superquiet : bool, optional
    Very quiet module output
    Default: None

input : str | list[str], required
    Name of input raster map
    Used as: input, raster, name
output : str | type(np.ndarray) | type(np.array) | type(gs.array.array), required
    Name for output raster map
    Used as: output, raster, name
flags : str, optional
    Allowed values: m, n, l, 8, a, c, d
    m
        MODIS (7 input bands:1,2,3,4,5,6,7)
    n
        NOAA AVHRR (2 input bands:1,2)
    l
        Landsat 5+7 (6 input bands:1,2,3,4,5,7)
    8
        Landsat 8 (7 input bands:1,2,3,4,5,6,7)
    a
        ASTER (6 input bands:1,3,5,6,8,9)
    c
        Aggressive mode (Landsat)
        Albedo dry run to calculate some water to beach/sand/desert stretching, a kind of simple atmospheric correction
    d
        Soft mode (MODIS)
        Albedo dry run to calculate some water to beach/sand/desert stretching, a kind of simple atmospheric correction
overwrite : bool, optional
    Allow output files to overwrite existing files
    Default: None
verbose : bool, optional
    Verbose module output
    Default: None
quiet : bool, optional
    Quiet module output
    Default: None
superquiet : bool, optional
    Very quiet module output
    Default: None

Returns:

result : grass.tools.support.ToolResult | np.ndarray | tuple[np.ndarray] | None
If the tool produces text as standard output, a ToolResult object will be returned. Otherwise, None will be returned. If an array type (e.g., np.ndarray) is used for one of the raster outputs, the result will be an array and will have the shape corresponding to the computational region. If an array type is used for more than one raster output, the result will be a tuple of arrays.

DESCRIPTION

i.albedo calculates the albedo, that is the Shortwave surface reflectance in the range of 0.3-3 micro-meters. It takes as input individual bands of surface reflectance originating from MODIS, AVHRR, Landsat or Aster satellite sensors and calculates the albedo for those. This is a precursor to r.sun and any energy-balance processing.

NOTES

It uses for Landsat 8 the weighted average reflectance (temporary solution until an algorithm is found).

It assumes MODIS product surface reflectance in [0;10000].

EXAMPLE

The following example creates the raster map "albedo_lsat7_1987" from the LANDSAT-TM5 bands in the North Carolina dataset:

g.region raster=lsat5_1987_10 -p
i.albedo -l input=lsat5_1987_10,lsat5_1987_20,lsat5_1987_30,lsat5_1987_40,lsat5_1987_50,lsat5_1987_70 output=albedo_lsat7_1987

i.albedo LANDSAT-TM5 1987 example
Figure: Resulting albedo map from LANDSAT 5

The following example creates the raster map "albedo_lsat7_2000" from the LANDSAT-TM7 bands in the North Carolina dataset:

g.region raster=lsat7_2000_10 -p
i.albedo -l input=lsat7_2000_10,lsat7_2000_20,lsat7_2000_30,lsat7_2000_40,lsat7_2000_50,lsat7_2000_70 output=albedo_lsat7_2000

i.albedo LANDSAT-TM7 2000 example
Figure: Resulting albedo map from LANDSAT 7

TODO

Maybe change input requirement of MODIS to [0.0-1.0]?

REFERENCES

For a 2 band determination of the Aster BB Albedo see the following:

Salleh and Chan, 2014. Land Surface Albedo Determination: Remote Sensing and Statistical Validation. in proceedings of FIG 2014 (PDF)

SEE ALSO

r.sun, i.vi

AUTHOR

Yann Chemin

SOURCE CODE

Available at: i.albedo source code (history)
Latest change: Friday Aug 08 09:39:19 2025 in commit ed72c71