[GRASS-SVN] r45788 - grass/trunk/imagery/i.atcorr

svn_grass at osgeo.org svn_grass at osgeo.org
Sun Mar 27 04:29:53 EDT 2011


Author: neteler
Date: 2011-03-27 01:29:53 -0700 (Sun, 27 Mar 2011)
New Revision: 45788

Added:
   grass/trunk/imagery/i.atcorr/README
Modified:
   grass/trunk/imagery/i.atcorr/Iwave.cpp
Log:
better explain how to add sensors

Modified: grass/trunk/imagery/i.atcorr/Iwave.cpp
===================================================================
--- grass/trunk/imagery/i.atcorr/Iwave.cpp	2011-03-27 08:29:23 UTC (rev 45787)
+++ grass/trunk/imagery/i.atcorr/Iwave.cpp	2011-03-27 08:29:53 UTC (rev 45788)
@@ -10,22 +10,8 @@
 #pragma warning(disable:4305)	/* disable warning about initialization of a float by a double */
 #endif
 
-/* Adding new band filters (see also Iwave.h):
- *
- * Note: the spectral range ranges 250 to 4000 nm (see Iwave.h) which is 
- *   4000-250=3750nm, and (4000-250)/1500=2.5. Hence, the resulting step 
- *   size is 2.5 nm in the ffu.s array.
- *
- * o bands are defined by their discrete filter function
- * o to compute a band position in the 1500 slots of ffu.s array, start
- *   with 250nm using 2.5nm increments. The result is the starting index
- *   for the spectral band.
- * o 1500 is the number of wavelength spectral description slots.
- *   - a 'for' loop fills up the slots with 0
- *   - then the ffu.s array is filled with each of the spectral bands data one after the other.
- *     Example Lsat TM: (435-250) / 2.5 = 74
- * o add iwave value, also in Iwave.h
- * o add to GeomCond.cpp and GeomCond.h
+/* Adding new band filters:
+ * see README
  */
 
 

Added: grass/trunk/imagery/i.atcorr/README
===================================================================
--- grass/trunk/imagery/i.atcorr/README	                        (rev 0)
+++ grass/trunk/imagery/i.atcorr/README	2011-03-27 08:29:53 UTC (rev 45788)
@@ -0,0 +1,47 @@
+Adding new band filters (see also Iwave.h):
+
+ Note: the spectral range is from 250 nm to 4000 nm (see Iwave.h) which is 
+   4000-250=3750nm. The step size is (4000-250)/1500=2.5 nm in the ffu.s array.
+
+ o bands are defined by their discrete filter function
+ o to compute a band position in the 1500 slots of ffu.s array, start
+   with 250nm using 2.5nm increments. The result is the starting index
+   for the spectral band.
+ o 1500 is the number of wavelength spectral description slots.
+   - a 'for' loop fills up the slots with 0
+   - then the ffu.s array is filled with each of the spectral band data
+     one after the other.
+     Example Lsat TM: (435-250) / 2.5 = 74
+ o add iwave values, also in Iwave.h
+ o add to GeomCond.cpp and GeomCond.h
+
+
+Preparation of the Iwave.cpp file code:
+
+The helper script create_iwave.py can help to interpolate the filter functions
+to the correct step size of 2.5 nm (in case that the filter function data
+are delivered with a different step size).
+The output filter function in a format as needed in the Iwave.cpp file.
+
+The script create_iwave.py basically needs a .csv file with spectral
+response for each band in a column. The first column has to be the 
+wavelength (nm). The first line (and only first) is a header with
+wavelength, followed by band names file name is used for sensor name.
+See for example ./sensors_csv/ikonos.csv.
+
+Usage 
+  create_iwave.py <csv file>
+
+If generates the filter function as IWave.cpp template from csv file.
+
+Note: If the spectral response is null for a frequency, leave it empty
+in csv file. Ex.:
+
+  WL(nm),band 1,band 2,band 3,band 4
+  455,0.93,,,
+  485,0.94,0.00,,
+  545,0.00,0.87,0.00,
+
+Program will interpolate filter function to 2.5 nm steps
+and output a CPP template file in the IWave format.
+


Property changes on: grass/trunk/imagery/i.atcorr/README
___________________________________________________________________
Added: svn:mime-type
   + text/plain
Added: svn:keywords
   + Author Date Id
Added: svn:eol-style
   + native



More information about the grass-commit mailing list