i.topo.corr.1grass man page

i.topo.corr — Computes topographic correction of reflectance.

Keywords

imagery, terrain, topographic correction

Synopsis

i.topo.corr
i.topo.corr --help
i.topo.corr [-is]  [input=name[,name,...]]  output=name basemap=name zenith=float  [azimuth=float]   [method=string]   [--overwrite]  [--help]  [--verbose]  [--quiet]  [--ui]

Flags

-i

Output sun illumination terrain model

-s

Scale output to input and copy color rules

--overwrite

Allow output files to overwrite existing files

--help

Print usage summary

--verbose

Verbose module output

--quiet

Quiet module output

--ui

Force launching GUI dialog

Parameters

input=name[,name,...]

Name of reflectance raster maps to be corrected topographically

output=name [required]

Name (flag -i) or prefix for output raster maps

basemap=name [required]

Name of input base raster map (elevation or illumination)

zenith=float [required]

Solar zenith in degrees

azimuth=float

Solar azimuth in degrees (only if flag -i)

method=string

Topographic correction method
Options: cosine, minnaert, c-factor, percent
Default: c-factor

Description

i.topo.corr is used to topographically correct reflectance from imagery files, e.g. obtained with i.landsat.toar, using a sun illumination terrain model. This illumination model represents the cosine of the incident angle i, i.e. the  angle between the normal to the ground and the sun rays.

Note: If needed, the sun position can be calculated for a given date with r.sunmask.
Figure showing terrain and solar angles

Using the -i flag and given an elevation basemap (metric), i.topo.corr creates a simple illumination model using the formula:

where, i is the incident angle to be calculated, s is the terrain slope angle, z is the solar zenith angle, a the solar azimuth angle, o the terrain aspect angle.

For each band file, the corrected reflectance (ref_c) is calculate from the original reflectance (ref_o) using one of the four offered methods (one lambertian and two non-lambertian).

Method: cosine

  • ref_c = ref_o * cos_z / cos_i

Method: minnaert

  • ref_c = ref_o * (cos_z / cos_i) ^k

where, k is obtained by linear regression of
ln(ref_o) = ln(ref_c) - k ln(cos_i/cos_z)

Method: c-factor

  • ref_c = ref_o * (cos_z + c)/ (cos_i + c)

where, c is a/m from ref_o = a + m * cos_i

Method: percent

We can use cos_i to estimate the percent of solar incidence on the surface, then the transformation (cos_i + 1)/2 varied from 0 (surface in the side in opposition to the sun: infinite correction) to 1 (direct exhibition to the sun: no correction) and the corrected reflectance can be calculated as

  • ref_c = ref_o * 2 / (cos_i + 1)

Notes

1

The illumination model (cos_i) with flag -i uses the actual region as limits and the resolution of the elevation map.

2

The topographic correction use the full reflectance file (null remain null) and its resolution.

3

The elevation map to calculate the illumination model should be metric.

Examples

First, make a illumination model from the elevation map (here, SRTM). Then make perform the topographic correction of e.g. the bands toar.5, toar.4 and toar.3 with output as tcor.toar.5, tcor.toar.4, and tcor.toar.3 using c-factor (= c-correction) method:

# first pass: create illumination model
i.topo.corr -i base=SRTM zenith=33.3631 azimuth=59.8897 output=SRTM.illumination
# second pass: apply illumination model
i.topo.corr base=SRTM.illumination input=toar.5,toar.4,toar.3 output=tcor \
  zenith=33.3631 method=c-factor

References

See Also

i.landsat.toar, r.mapcalc, r.sun r.sunmask

Author

E. Jorge Tizado  (ej.tizado unileon es)
Dept. Biodiversity and Environmental Management, University of León, Spain

Figure derived from Neteler & Mitasova, 2008.

Last changed: $Date: 2014-12-09 19:39:37 +0100 (Tue, 09 Dec 2014) $

Source Code

Available at: i.topo.corr source code (history)

Main index | Imagery index | Topics index | Keywords index | Graphical index | Full index

© 2003-2017 GRASS Development Team, GRASS GIS 7.2.1 Reference Manual

Info

GRASS 7.2.1 Grass User's Manual