i.albedo
Computes broad band albedo from surface reflectance.
i.albedo [-mnl8sacd] input=name [,name,...] output=name [--overwrite] [--verbose] [--quiet] [--qq] [--ui]
Example:
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.
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")
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)
-s
Sentinel-2 (6 input bands: B2,B3,B4,B8,B11,B12 surface reflectance in [0,1]; Bonafoni & Sekertekin 2020 coefficients)
-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 | 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, s, 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)
s
Sentinel-2 (6 input bands: B2,B3,B4,B8,B11,B12 surface reflectance in [0,1]; Bonafoni & Sekertekin 2020 coefficients)
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.
Raises:
grass.tools.ToolError: When the tool ended with an error.
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, s, 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)
s
Sentinel-2 (6 input bands: B2,B3,B4,B8,B11,B12 surface reflectance in [0,1]; Bonafoni & Sekertekin 2020 coefficients)
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
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, Sentinel-2 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].
The Sentinel-2 (-s) mode expects exactly 6 surface reflectance bands in [0,1], in the order B2, B3, B4, B8, B11, B12 (e.g. as produced by Sentinel-2 L2A surface reflectance, scaled from its native [0,10000] digital numbers).
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

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

Figure: Resulting albedo map from LANDSAT 7
The following example creates a Sentinel-2 broadband albedo map from six surface reflectance bands (B2, B3, B4, B8, B11, B12) already scaled to [0,1]:
i.albedo -s input=s2_B2,s2_B3,s2_B4,s2_B8,s2_B11,s2_B12 output=albedo_sentinel2
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)
For the Sentinel-2 narrow-to-broadband conversion coefficients:
Bonafoni, S. and Sekertekin, A., 2020. Albedo Retrieval From Sentinel-2 by New Narrow-to-Broadband Conversion Coefficients. IEEE Geoscience and Remote Sensing Letters, 17(9), 1618-1622. (DOI)
SEE ALSO
AUTHOR
Yann Chemin
SOURCE CODE
Available at: i.albedo source code
(history)
Latest change: Wednesday Sep 23 17:28:56 2026 in commit 3ca4643