Atmospheric correction

From GRASS-Wiki
Revision as of 11:26, 13 April 2009 by Neteler (talk | contribs) (set region to map first with g.region)

Jump to: navigation, search

Aim of this tutorial:

  • Transforming a Landsat ETM+ image from DN values to radiance values
  • Conducting an atmospheric correction of a Landsat image using the i.atcorr module in Grass GIS 6.3.0

Required elements:

After downloading of the North Carolina dataset, it must be unzipped into your GIS database. When starting Grass GIS, select this GIS database, open the ‘nc_spm_08’ dataset as LOCATION, and ‘PERMANENT’ as MAPSET.

Calculating radiance values

This mapset contains, amongst others, a Landsat ETM+ image of 24th of May 2002. Every pixel of this image contains a DN or grey value. In order to be able to make calculations with satellite imagery, or compare values amongst different sensors, these values have to be converted to radiances or reflectances. The formulas to do this conversion are described here for Landsat images. The conversion from DN values to top-of-atmosphere radiances is done as follows:



  • Lλ = Spectral Radiance at the sensor's aperture in watts/(meter squared * ster * μm)
  • QCAL = the quantized calibrated pixel value in DN
  • LMINλ = the spectral radiance that is scaled to QCALMIN in watts/(meter squared * ster * μm)
  • LMAXλ = the spectral radiance that is scaled to QCALMAX in watts/(meter squared * ster * μm)
  • QCALMIN = the minimum quantized calibrated pixel value (corresponding to LMINλ) in DN
  • QCALMAX = the maximum quantized calibrated pixel value (corresponding to LMAXλ) in DN =255
  • Lλ is the apparent radiance as seen by the satellite sensor.

LMINλ and LMAXλ are the radiances related to the minimal and maximal DN value, and are reported in the metadata file for each image, or in the table 1. High gain or low gain is also reported in the metadata file of each Landsat image. The minimal DN value (QCALMIN) is 1 for Landsat ETM+ images (1), and the maximal DN value (QCALMAX) is 255. QCAL is the DN value for every separate pixel in the Landsat image.

Accessing the metadata:

   $ lsat7_2002_xx

Under ‘comments’, the maximal and minimal radiance (LMAX and LMIN) for each band are given. Conversion to radiance (this calculation is done for band 1, for the other bands, the numbers in italics need to be replaced with their correct values):

   $ g.region rast=lsat7_2002_10 -p
   $ r.mapcalc “lsat7_2002_10_rad=((191.6 - (-6.2)) / (255 - 1)) * (lsat7_2002_10 - 1) + (-6.2)”

Atmospheric correction

This radiance image can be used for the atmospheric correction with the 6S algorithm. The algorithm will transform the top-of-the-atmosphere radiance values to top-of-canopy reflectance values using predefined information on the aerosol content and atmospheric composition of the time the image was taken. What follows describes the method to use this algorithm in Grass GIS. Again, only the calculations for band 1 are shown, and the numbers to be changed for the other bands are indicated in red.The icnd file consists of the following parameters, and can be made in Notepad:

  • 8 - indicates that it is an ETM+ image
  • 05 24 14.30 -78.691 35.749 - image taken on the 24th of May, at 14.30; the center of the image lies at 78.691°W and 35.749°N
  • 2 - the midlatitude summer atmospheric model
  • 1 - the continental aerosol model
  • 50 - the visibility for the aerosol model
  • -0.600 - the area lies 600 meters above sea level
  • -1000 - image taken of a satellite sensor
  • 61 - spectral band

This file is than used in the i.atcorr module:

    $ i.atcorr –a iimg=lsat7_2002_10_rad ialt=elevation icnd=icdn.txt oimg=lsat7_2002_10_atcorr


  • -a refers to a Landsat image taken after July 2000
  • iimg is the image to be corrected
  • ialt is the altitude map
  • icnd is the path to the icnd.txt file
  • oimg is the name of the output image

More information on the use of i.atcorr for other images can be found at .