Browse Source

i.atcorr manual, imageryintro: clarify TOAR part; cross links added; keywords added

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@68456 15284696-431f-4ddb-bdfa-cd5b030d7da7
Markus Neteler 9 years ago
parent
commit
2516aae3e2

+ 5 - 0
imagery/i.albedo/main.c

@@ -95,6 +95,11 @@ int main(int argc, char *argv[])
     G_add_keyword(_("imagery"));
     G_add_keyword(_("imagery"));
     G_add_keyword(_("albedo"));
     G_add_keyword(_("albedo"));
     G_add_keyword(_("reflectance"));
     G_add_keyword(_("reflectance"));
+    G_add_keyword(_("satellite"));
+    G_add_keyword(_("Landsat"));
+    G_add_keyword(_("ASTER"));
+    G_add_keyword(_("AVHRR"));
+    G_add_keyword(_("MODIS"));
     module->description = _("Computes broad band albedo from surface reflectance.");
     module->description = _("Computes broad band albedo from surface reflectance.");
 
 
     /* Define the different options */
     /* Define the different options */

+ 7 - 3
imagery/i.aster.toar/i.aster.toar.html

@@ -1,9 +1,9 @@
 <h2>DESCRIPTION</h2>
 <h2>DESCRIPTION</h2>
 
 
 <em>i.aster.toar</em> calculates the Top Of Atmosphere (TOA) reflectance
 <em>i.aster.toar</em> calculates the Top Of Atmosphere (TOA) reflectance
-for Terra-Aster L1B in the visible, NIR and SWIR bands (9+1 bands) and
+for Terra-ASTER L1B in the visible, NIR and SWIR bands (9+1 bands) and
 brigthness temperature for the TIR bands (5 bands), all from L1B DN values. 
 brigthness temperature for the TIR bands (5 bands), all from L1B DN values. 
-It is useful after importing your Aster imagery from storage format that
+It is useful to apply after import of original ASTER imagery that
 is generally in standard DN values range.
 is generally in standard DN values range.
 
 
 <p>
 <p>
@@ -35,7 +35,11 @@ The function is defined in gain_aster.c file.
 <a href="r.in.aster.html">r.in.aster</a>
 <a href="r.in.aster.html">r.in.aster</a>
 </em>
 </em>
 
 
-<h2>AUTHORS</h2>
+<p>
+ASTER sensor data download:
+<a href="http://asterweb.jpl.nasa.gov/">ASTER: Advanced Spaceborne Thermal Emission and Reflection Radiometer</a>
+
+<h2>AUTHOR</h2>
 
 
 Yann Chemin, CSU, Australia
 Yann Chemin, CSU, Australia
 
 

+ 2 - 1
imagery/i.aster.toar/main.c

@@ -96,10 +96,11 @@ int main(int argc, char *argv[])
     module = G_define_module();
     module = G_define_module();
     G_add_keyword(_("imagery"));
     G_add_keyword(_("imagery"));
     G_add_keyword(_("radiometric conversion"));
     G_add_keyword(_("radiometric conversion"));
-    G_add_keyword(_("Terra-ASTER"));
     G_add_keyword(_("radiance"));
     G_add_keyword(_("radiance"));
     G_add_keyword(_("reflectance"));
     G_add_keyword(_("reflectance"));
     G_add_keyword(_("brightness temperature"));
     G_add_keyword(_("brightness temperature"));
+    G_add_keyword(_("satellite"));
+    G_add_keyword(_("ASTER"));
     module->description =
     module->description =
 	_("Calculates Top of Atmosphere Radiance/Reflectance/Brightness Temperature from ASTER DN.\n");
 	_("Calculates Top of Atmosphere Radiance/Reflectance/Brightness Temperature from ASTER DN.\n");
 
 

+ 1 - 1
imagery/i.atcorr/README

@@ -38,7 +38,7 @@ See for example ./sensors_csv/ikonos.csv.
 Usage 
 Usage 
   create_iwave.py <csv file>
   create_iwave.py <csv file>
 
 
-If generates the filter function as IWave.cpp template from csv file.
+It generates the filter function as an insert for IWave.cpp from the given file.
 
 
 Note: If the spectral response is null for a frequency, leave it empty
 Note: If the spectral response is null for a frequency, leave it empty
 in csv file. Ex.:
 in csv file. Ex.:

+ 37 - 12
imagery/i.atcorr/i.atcorr.html

@@ -628,9 +628,11 @@ g.region raster=lsat7_2002_40 -p
 
 
 It is important to verify the available metadata for the sun position which
 It is important to verify the available metadata for the sun position which
 has to be defined for the atmospheric correction. An option is to check the
 has to be defined for the atmospheric correction. An option is to check the
-satellite overpass time with sun position as reported in
-<a href="ftp://ftp.glcf.umiacs.umd.edu/glcf/Landsat/WRS2/p016/r035/p016r035_7x20020524.ETM-EarthSat-Orthorectified/p016r035_7x20020524.met">metadata</a>. For the North Carolina sample dataset, they have also been
-stored for each channel and can be retrieved like this:
+satellite overpass time with sun position as reported in the
+<a href="ftp://ftp.glcf.umd.edu/glcf/Landsat/WRS2/p016/r035/p016r035_7x20020524.ETM-EarthSat-Orthorectified/p016r035_7x20020524.met">metadata</a>
+file (<a href="http://www.grassbook.org/wp-content/uploads/ncexternal/landsat/2002/p016r035_7x20020524.met">file copy</a>; North Carolina
+sample dataset). In case of the North Carolina sample dataset, values
+have been stored for each channel and can be retrieved like this:
 
 
 <div class="code"><pre>
 <div class="code"><pre>
 r.info lsat7_2002_40
 r.info lsat7_2002_40
@@ -647,13 +649,23 @@ r.sunmask -s elev=elevation out=dummy year=2002 month=5 day=24 hour=10 min=42 se
 # .. reports: sun azimuth: 121.342461, sun angle above horz.(refraction corrected): 65.396652
 # .. reports: sun azimuth: 121.342461, sun angle above horz.(refraction corrected): 65.396652
 </pre></div>
 </pre></div>
 
 
-If the overpass time is unknown, use the <a href="http://www-air.larc.nasa.gov/tools/predict.htm">Satellite Overpass Predictor</a>.
-<p>Convert DN (digital number = pixel values) to Radiance at top-of-atmosphere (TOA), using the
-formula
+If the overpass time is unknown, use the
+<a href="http://cloudsgate2.larc.nasa.gov/cgi-bin/predict/predict.cgi">NASA LaRC Satellite Overpass Predictor</a>.
+
+<h4>Conversion of digital number (DN) to radiance at top-of-atmosphere (TOA)</h4>
+
+For Landsat and ASTER, the conversion can be conveniently done with
+<a href="i.landsat.toar.html">i.landsat.toar</a> or <a href="i.aster.toar.html">i.aster.toar</a>,
+respectively.
+
+<p>
+In case of different satellites, the conversion of DN (digital number = pixel values) to
+radiance at top-of-atmosphere (TOA) can also be done manually, using e.g. the formula
 <div class="code"><pre>
 <div class="code"><pre>
-   L&lambda; = ((LMAX&lambda; - LMIN&lambda;)/(QCALMAX-QCALMIN)) * (QCAL-QCALMIN) + LMIN&lambda;
+# formula depends on satellite sensor, see respective metadata
+L&lambda; = ((LMAX&lambda; - LMIN&lambda;)/(QCALMAX-QCALMIN)) * (QCAL-QCALMIN) + LMIN&lambda;
 </pre></div>
 </pre></div>
-Where:
+where:
 <ul>
 <ul>
 <li> L&lambda; = Spectral Radiance at the sensor's aperture in Watt/(meter squared * ster * &micro;m), the
 <li> L&lambda; = Spectral Radiance at the sensor's aperture in Watt/(meter squared * ster * &micro;m), the
       apparent radiance as seen by the satellite sensor;</li>
       apparent radiance as seen by the satellite sensor;</li>
@@ -664,9 +676,10 @@ Where:
 <li> QCALMAX = the maximum quantized calibrated pixel value (corresponding to LMAX&lambda;) in DN=255.</li>
 <li> QCALMAX = the maximum quantized calibrated pixel value (corresponding to LMAX&lambda;) in DN=255.</li>
 </ul>
 </ul>
 
 
-LMIN&lambda; and LMAX&lambda; 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+
+LMIN&lambda; and LMAX&lambda; 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
+satellite image. For Landsat, the minimal DN value (QCALMIN) is 1 for Landsat ETM+
 images (see
 images (see
 <a href="http://landsathandbook.gsfc.nasa.gov/pdfs/Landsat7_Handbook.pdf">Landsat handbook</a>, see chapter 11),
 <a href="http://landsathandbook.gsfc.nasa.gov/pdfs/Landsat7_Handbook.pdf">Landsat handbook</a>, see chapter 11),
 and the maximal DN value (QCALMAX) is 255. QCAL is the DN value for every
 and the maximal DN value (QCALMAX) is 255. QCAL is the DN value for every
@@ -688,7 +701,16 @@ need to be replaced with their related values):
 r.mapcalc "lsat7_2002_40_rad = ((241.1 - (-5.1)) / (255.0 - 1.0)) * (lsat7_2002_40 - 1.0) + (-5.1)"
 r.mapcalc "lsat7_2002_40_rad = ((241.1 - (-5.1)) / (255.0 - 1.0)) * (lsat7_2002_40 - 1.0) + (-5.1)"
 </pre></div>
 </pre></div>
 
 
+Again, the <em>r.mapcalc</em> calculation is only needed when working with satellite data
+other than Landsat or ASTER.
 
 
+<h4>Creation of parameter file for i.atcorr</h4>
+
+The underlying 6S model is parametrized through a control file, indicated with the
+<em>parameter</em> option. This is a text file defining geometrical and atmospherical
+conditions of the satellite overpass. Below some details:
+
+<p>
 <div class="code"><pre>
 <div class="code"><pre>
 # find mean elevation (target above sea level, used as initialization value in control file)
 # find mean elevation (target above sea level, used as initialization value in control file)
 r.univar elevation
 r.univar elevation
@@ -730,7 +752,10 @@ optical depth at 550nm.
 
 
 GRASS Wiki page about
 GRASS Wiki page about
   <a href="http://grasswiki.osgeo.org/wiki/Atmospheric_correction">Atmospheric correction</a>
   <a href="http://grasswiki.osgeo.org/wiki/Atmospheric_correction">Atmospheric correction</a>
-<p><em>
+<p>
+<em>
+<a href="i.aster.toar.html">i.aster.toar</a>,
+<a href="i.landsat.toar.html">i.landsat.toar</a>,
 <a href="r.info.html">r.info</a>,
 <a href="r.info.html">r.info</a>,
 <a href="r.mapcalc.html">r.mapcalc</a>,
 <a href="r.mapcalc.html">r.mapcalc</a>,
 <a href="r.univar.html">r.univar</a>
 <a href="r.univar.html">r.univar</a>

+ 4 - 0
imagery/i.atcorr/main.cpp

@@ -433,6 +433,10 @@ static void define_module(void)
 	_("6S - Second Simulation of Satellite Signal in the Solar Spectrum.");
 	_("6S - Second Simulation of Satellite Signal in the Solar Spectrum.");
     G_add_keyword(_("imagery"));
     G_add_keyword(_("imagery"));
     G_add_keyword(_("atmospheric correction"));
     G_add_keyword(_("atmospheric correction"));
+    G_add_keyword(_("radiometric conversion"));
+    G_add_keyword(_("radiance"));
+    G_add_keyword(_("reflectance"));
+    G_add_keyword(_("satellite"));
 
 
     /* 
     /* 
        " Incorporated into Grass by Christo A. Zietsman, January 2003.\n"
        " Incorporated into Grass by Christo A. Zietsman, January 2003.\n"

+ 8 - 4
imagery/i.biomass/i.biomass.html

@@ -8,14 +8,17 @@ Input:
  <li>Light Use Efficiency [0.0-1.0], in Uzbekistan cotton is at 1.9 most of the time.
  <li>Light Use Efficiency [0.0-1.0], in Uzbekistan cotton is at 1.9 most of the time.
  <li>Latitude [0.0-90.0], from <em>r.latlong</em>.
  <li>Latitude [0.0-90.0], from <em>r.latlong</em>.
  <li>DOY [1-366].
  <li>DOY [1-366].
- <li>Transmissivity of the Atmosphere single-way [0.0-1.0], mostly around 0.7+ in clear sky.
+ <li>Transmissivity of the atmosphere single-way [0.0-1.0], mostly around 0.7+ in clear sky.
  <li>Water availability [0.0-1.0], possibly using direct output from <em>i.eb.evapfr</em>.
  <li>Water availability [0.0-1.0], possibly using direct output from <em>i.eb.evapfr</em>.
 </ul>
 </ul>
 
 
 <h2>NOTES</h2>
 <h2>NOTES</h2>
-It can use the output of i.eb.evapfr directly as water availability input.
+
+<em>i.biomass</em> can use the output of <em>i.eb.evapfr</em> directly
+as water availability input.
 
 
 <h2>TODO</h2>
 <h2>TODO</h2>
+
 Remove Latitude, DOY and Tsw from input and replace with a raster 
 Remove Latitude, DOY and Tsw from input and replace with a raster 
 input compatible with <em>r.sun</em> output.
 input compatible with <em>r.sun</em> output.
 
 
@@ -23,7 +26,8 @@ input compatible with <em>r.sun</em> output.
 
 
 <em>
 <em>
 <a href="i.eb.evapfr.html">i.eb.evapfr</a>,
 <a href="i.eb.evapfr.html">i.eb.evapfr</a>,
-<a href="r.latlong.html">r.latlong</a>
+<a href="r.latlong.html">r.latlong</a>,
+<a href="r.sun.html">r.sun</a>
 </em>
 </em>
 
 
 <h2>REFERENCES</h2>
 <h2>REFERENCES</h2>
@@ -38,7 +42,7 @@ Supplementing farm level water productivity assessment by remote
 sensing in transition economies. Water International. 30(4):513-521.
 sensing in transition economies. Water International. 30(4):513-521.
 
 
 
 
-<h2>AUTHORS</h2>
+<h2>AUTHOR</h2>
 
 
 Yann Chemin, Bec de Mortagne, France
 Yann Chemin, Bec de Mortagne, France
 
 

+ 1 - 0
imagery/i.landsat.acca/i.landsat.acca.html

@@ -51,6 +51,7 @@ i.landsat.acca -f band_prefix=226_62.toar output=226_62.acca
 <h2>SEE ALSO</h2>
 <h2>SEE ALSO</h2>
 
 
 <em>
 <em>
+<a href="i.atcorr.html">i.atcorr</a>,
 <a href="i.landsat.toar.html">i.landsat.toar</a>
 <a href="i.landsat.toar.html">i.landsat.toar</a>
 </em>
 </em>
 
 

+ 2 - 1
imagery/i.landsat.acca/main.c

@@ -103,9 +103,10 @@ int main(int argc, char *argv[])
     module->description =
     module->description =
 	_("Performs Landsat TM/ETM+ Automatic Cloud Cover Assessment (ACCA).");
 	_("Performs Landsat TM/ETM+ Automatic Cloud Cover Assessment (ACCA).");
     G_add_keyword(_("imagery"));
     G_add_keyword(_("imagery"));
-    G_add_keyword(_("Landsat"));
     G_add_keyword("ACCA");
     G_add_keyword("ACCA");
     G_add_keyword(_("cloud detection"));
     G_add_keyword(_("cloud detection"));
+    G_add_keyword(_("satellite"));
+    G_add_keyword(_("Landsat"));
     
     
     band_prefix = G_define_standard_option(G_OPT_R_BASENAME_INPUT);
     band_prefix = G_define_standard_option(G_OPT_R_BASENAME_INPUT);
     band_prefix->label = _("Base name of input raster bands");
     band_prefix->label = _("Base name of input raster bands");

+ 2 - 1
imagery/i.landsat.toar/main.c

@@ -72,8 +72,9 @@ int main(int argc, char *argv[])
     G_add_keyword(_("radiance"));
     G_add_keyword(_("radiance"));
     G_add_keyword(_("reflectance"));
     G_add_keyword(_("reflectance"));
     G_add_keyword(_("brightness temperature"));
     G_add_keyword(_("brightness temperature"));
-    G_add_keyword(_("Landsat"));
     G_add_keyword(_("atmospheric correction"));
     G_add_keyword(_("atmospheric correction"));
+    G_add_keyword(_("satellite"));
+    G_add_keyword(_("Landsat"));
     module->overwrite = TRUE;
     module->overwrite = TRUE;
 
 
     /* It defines the different parameters */
     /* It defines the different parameters */

+ 14 - 6
imagery/imageryintro.html

@@ -20,8 +20,9 @@ in 8 to 16 bits. DNs can be turned back into physical values by
 applying the reverse formula <tt>(x = (y - b) / a)</tt>.
 applying the reverse formula <tt>(x = (y - b) / a)</tt>.
 <p>
 <p>
 The GRASS GIS module <a href="i.landsat.toar.html">i.landsat.toar</a>
 The GRASS GIS module <a href="i.landsat.toar.html">i.landsat.toar</a>
-easily transforms Landsat DN to radiance-at-sensor. The equivalent 
-module for ASTER data is <a href="i.aster.toar.html">i.aster.toar</a>.
+easily transforms Landsat DN to radiance-at-sensor (top of atmosphere,
+TOA). The equivalent module for ASTER data is
+<a href="i.aster.toar.html">i.aster.toar</a>.
 For other satellites, <a href="r.mapcalc.html">r.mapcalc</a> can 
 For other satellites, <a href="r.mapcalc.html">r.mapcalc</a> can 
 be employed.
 be employed.
 <p>
 <p>
@@ -30,11 +31,18 @@ be employed.
 When radiance-at-sensor has been obtained, still the atmosphere 
 When radiance-at-sensor has been obtained, still the atmosphere 
 influences the signal as recorded at the sensor. This atmospheric 
 influences the signal as recorded at the sensor. This atmospheric 
 interaction with the sun energy reflected back into space by 
 interaction with the sun energy reflected back into space by 
-ground/vegetation/soil needs to be corrected. There are two ways to 
-apply atmospheric correction for satellite imagery. The simple way 
-for Landsat is with <a href="i.landsat.toar.html">i.landsat.toar</a>,
+ground/vegetation/soil needs to be corrected. The need of
+removing atmospheric artifacts stems from the fact that the
+atmosphericic conditions are changing over time. Hence, to gain
+comparability between Earth surface images taken at different
+times, atmospheric need to be removed converting at-sensor values
+which are top of atmosphere to surface reflectance values.
+<p>
+In GRASS GIS, there are two ways to apply atmospheric correction for
+satellite imagery. A simple, less accurate way for Landsat is with
+<a href="i.landsat.toar.html">i.landsat.toar</a>,
 using the DOS correction method. The more accurate way is using 
 using the DOS correction method. The more accurate way is using 
-<a href="i.atcorr.html">i.atcorr</a> (which works for many satellite 
+<a href="i.atcorr.html">i.atcorr</a> (which supports many satellite 
 sensors). The atmospherically corrected sensor data represent 
 sensors). The atmospherically corrected sensor data represent 
 surface <a href="http://en.wikipedia.org/wiki/reflectance">reflectance</a>,
 surface <a href="http://en.wikipedia.org/wiki/reflectance">reflectance</a>,
 which ranges theoretically from 0% to 100%. Note that this level of 
 which ranges theoretically from 0% to 100%. Note that this level of