Ignore:
Timestamp:
Nov 19, 2010, 6:00:17 AM (14 years ago)
Author:
aghisla
Message:

Added RapidEye sensor to i.atcorr - credits to RapidEye AG, Germany. Minor edits to v.krige and r.li.setup.py.

Location:
grass/trunk/imagery/i.atcorr
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • grass/trunk/imagery/i.atcorr/GeomCond.cpp

    r42884 r44358  
    367367    case 11: /* avnir            * enter month,day,hh.ddd,long.,lat. */
    368368    case 12: /* ikonos           * enter month,day,hh.ddd,long.,lat. */
     369    case 13: /* rapideye         * enter month,day,hh.ddd,long.,lat. */
    369370    {
    370371        cin >> month;
     
    425426        string(" aster    observation        "),
    426427        string(" avnir    observation        "),
    427         string(" ikonos   observation        ")
     428        string(" ikonos   observation        "),
     429        string(" rapideye observation        ")
    428430    };
    429431
  • grass/trunk/imagery/i.atcorr/GeomCond.h

    r42884 r44358  
    5454/*         12      ikonos            * enter month,day,hh.ddd,long.,lat.c */
    5555/*                                                                      c */
     56/*         13      rapideye          * enter month,day,hh.ddd,long.,lat.c */
     57/*                                                                      c */
    5658/*                                                                      c */
    5759/*     note:       for hrv and tm experiments long. and lat. are the    c */
  • grass/trunk/imagery/i.atcorr/Iwave.cpp

    r42884 r44358  
    21832183}
    21842184
     2185/* Following filter function created using create_iwave.py */
     2186
     2187void IWave::rapideye(int iwa)
     2188{
     2189
     2190    /* "Blue" of rapideye */
     2191    static const float sr1[30] = {
     2192                .0200, .5050, .7300, .7450, .7600, .7750, .7800,
     2193                .8000, .8000, .8000, .8100, .8000, .8100, .8200,
     2194                .8300, .8400, .8500, .8650, .8800, .8900, .9200,
     2195                .9500, .9700, .9700, 1.0000, 1.0000
     2196    };
     2197
     2198    /* "Green" of rapideye */
     2199    static const float sr2[53] = {
     2200                .0100, .0183, .0267, .0105, .0132, .0158, .0184,
     2201                .0237, .0263, .0289, .0288, .0268, .0248, .0228,
     2202                .0188, .0168, .0148, .0128, .0108, .0200, .1200,
     2203                .8700, .8700, .8800, .8700, .8800, .8800, .8800,
     2204                .8900, .9000, .9000, .9050, .9200, .9250, .9300,
     2205                .9500, .9550, .9700, .9750, .9800, .9800, .9900,
     2206                .9900, .9850, 1.0000, .2750
     2207    };
     2208
     2209    /* "Red" of rapideye */
     2210    static const float sr3[27] = {
     2211                .0100, .0300, .2000, .7900, .8500, .8750, .8800,
     2212                .9000, .9100, .9100, .9200, .9300, .9450, .9500,
     2213                .9700, .9750, .9900, .9900, .9900, .9900, 1.0000,
     2214                .8600, .1150
     2215    };
     2216
     2217    /* "RedEdge " of rapideye */
     2218    static const float sr4[95] = {
     2219                .0300, .0285, .0271, .0256, .0241, .0226, .0212,
     2220                .0182, .0168, .0153, .0138, .0124, .0109, .0101,
     2221                .0108, .0111, .0114, .0118, .0121, .0124, .0128,
     2222                .0134, .0138, .0141, .0144, .0147, .0151, .0154,
     2223                .0161, .0164, .0167, .0170, .0174, .0177, .0180,
     2224                .0187, .0190, .0193, .0197, .0200, .0200, .0200,
     2225                .0200, .0200, .0200, .0200, .0200, .0200, .0200,
     2226                .0200, .0200, .0197, .0191, .0185, .0178, .0172,
     2227                .0159, .0153, .0146, .0140, .0133, .0127, .0121,
     2228                .0108, .0101, .0200, .1050, .4900, .9450, 1.0000,
     2229                1.0000, .9900, .9900, .9900, .9800, .9750, .9700,
     2230                .9600, .9450, .9400, .9000, .4300, .0950
     2231    };
     2232
     2233    /* "NIR " of rapideye */
     2234    static const float sr5[137] = {
     2235                .0100, .0102, .0103, .0105, .0106, .0108, .0110,
     2236                .0113, .0115, .0116, .0118, .0119, .0121, .0123,
     2237                .0126, .0128, .0129, .0131, .0132, .0134, .0136,
     2238                .0139, .0141, .0142, .0144, .0145, .0147, .0149,
     2239                .0152, .0154, .0155, .0157, .0158, .0160, .0162,
     2240                .0165, .0167, .0168, .0170, .0171, .0173, .0175,
     2241                .0178, .0180, .0181, .0183, .0184, .0186, .0188,
     2242                .0191, .0193, .0194, .0196, .0197, .0199, .0199,
     2243                .0192, .0188, .0185, .0182, .0178, .0175, .0171,
     2244                .0164, .0161, .0158, .0154, .0151, .0147, .0144,
     2245                .0137, .0134, .0130, .0127, .0123, .0120, .0116,
     2246                .0110, .0106, .0103, .0100, .0100, .0250, .0700,
     2247                .5000, .8850, 1.0000, .9750, .9700, .9750, .9800,
     2248                .9700, .9600, .9600, .9600, .9600, .9600, .9600,
     2249                .9500, .9400, .9400, .9300, .9300, .9300, .9300,
     2250                .9200, .9200, .9100, .9000, .8900, .8850, .8800,
     2251                .8600, .8400, .8400, .8150, .5800, .2450, .0800,
     2252
     2253    };
     2254
     2255    static const float wli[5] = {0.438, 0.463, 0.624, 0.500, 0.520};
     2256    static const float wls[5] = {0.513, 0.594, 0.690, 0.737, 0.862};
     2257
     2258    ffu.wlinf = (float)wli[iwa-1];
     2259    ffu.wlsup = (float)wls[iwa-1];
     2260
     2261    int i;
     2262    for(i = 0; i < 1501; i++) ffu.s[i] = 0;
     2263
     2264    switch(iwa)
     2265    {
     2266    case 1: for(i = 0; i < 30; i++)  ffu.s[75+i] = sr1[i];
     2267        break;
     2268    case 2: for(i = 0; i < 53; i++)  ffu.s[85+i] = sr2[i];
     2269        break;
     2270    case 3: for(i = 0; i < 27; i++)  ffu.s[149+i] = sr3[i];
     2271        break;
     2272    case 4: for(i = 0; i < 95; i++)  ffu.s[100+i] = sr4[i];
     2273        break;
     2274    case 5: for(i = 0; i < 137; i++)  ffu.s[108+i] = sr5[i];
     2275        break;
     2276    }
     2277}
     2278
    21852279float IWave::equivwl() const
    21862280{
     
    22522346        else if(iwave <= 84)    avnir(iwave - 80);
    22532347        else if(iwave <= 87)    ikonos(iwave - 84);
     2348        else if(iwave <= 92)    rapideye(iwave - 87);
    22542349        else G_warning(_("Unsupported iwave value: %d"), iwave);
    22552350    }
     
    22682363void IWave::print()
    22692364{
    2270     static const string nsat[89] = {
     2365    static const string nsat[94] = {
    22712366        string(" constant        "), string(" user s          "),
    22722367        string(" meteosat        "), string(" goes east       "), string(" goes west       "),
     
    23042399        string(" aster 7         "), string(" aster 8         "), string(" aster 9         "),
    23052400        string(" avnir 1         "), string(" avnir 2         "), string(" avnir 3         "),
    2306         string(" avnir 4         "), string(" ikonos green    "), string(" ikonos red      "),
    2307         string(" ikonos NIR      ")
     2401        string(" avnir 4         "),
     2402        string(" ikonos green    "), string(" ikonos red      "),       string(" ikonos NIR      "),
     2403        string(" rapideye blue   "), string(" rapideye green  "),       string(" rapideye red    "),
     2404        string(" rapideye rededge"), string(" rapideye NIR    "),
    23082405    };
    23092406
  • grass/trunk/imagery/i.atcorr/Iwave.h

    r42884 r44358  
    110110c        86  Red      "               ( 0.350-1.035 )                  c
    111111c        87  NIR      "               ( 0.350-1.035 )                  c
     112c        88  Blue band of RapidEye  ( 0.438-0.513 )                  c
     113c        89  Green      "               ( 0.463-0.594 )                  c
     114c        90  Red      "               ( 0.624-0.690 )                  c
     115c        91  RedEdge      "               ( 0.500-0.737 )                  c
     116c        92  NIR      "               ( 0.520-0.862 )                  c
    112117c  note: wl has to be in micrometer                                    c
    113118c**********************************************************************/
     
    148153        void avnir(int iwa);
    149154        void ikonos(int iwa);
     155        void rapideye(int iwa);
    150156
    151157
  • grass/trunk/imagery/i.atcorr/i.atcorr.html

    r43967 r44358  
    151151<td>12</td>
    152152<td><b>ikonos</b></td>
     153<td>enter month,day,hh.ddd,long.,lat. *</td>
     154</tr>
     155
     156<tr>
     157<td>13</td>
     158<td><b>RapidEye</b></td>
    153159<td>enter month,day,hh.ddd,long.,lat. *</td>
    154160</tr>
     
    533539<tr><td>87</td><td>ikonos NIR band (0.350-1.035)</td></tr>
    534540
     541<tr><td>88</td><td><b>RapidEye</b> Blue band (0.438-0.513)</td></tr>
     542<tr><td>89</td><td>RapidEye Green band (0.463-0.594)</td></tr>
     543<tr><td>90</td><td>RapidEye Red band (0.624-0.690)</td></tr>
     544<tr><td>91</td><td>RapidEye RedEdge band (0.500-0.737)</td></tr>
     545<tr><td>92</td><td>RapidEye NIR band (0.520-0.862)</td></tr>
     546
    535547</table>
    536548
     
    679691
    680692<li>Mauro A. Homem Antunes <a href="http://www.ltid.inpe.br/dsr/mauro/6s/download_6s.html">website about his 6S version</a>
     693
     694<li>RapidEye sensors have been provided by <a href="http://www.rapideye.de/">RapidEye AG, Germany</a>
     695
    681696</ul>
     697
    682698
    683699<h2>AUTHORS</h2>
     
    698714<br>Daniel Victoria, Anne Ghisla
    699715
     716<p><em>RapidEye sensors addition 11/2010:</em>
     717<br>Peter Löwe, Anne Ghisla
     718
    700719<p>
    701720<i>Last changed: $Date$</i>
Note: See TracChangeset for help on using the changeset viewer.