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

svn_grass at osgeo.org svn_grass at osgeo.org
Thu Jan 25 08:39:23 PST 2018


Author: mmetz
Date: 2018-01-25 08:39:23 -0800 (Thu, 25 Jan 2018)
New Revision: 72129

Modified:
   grass/trunk/imagery/i.atcorr/i.atcorr.html
   grass/trunk/imagery/i.atcorr/iwave.cpp
Log:
i.atcorr: update Landsat 8

Modified: grass/trunk/imagery/i.atcorr/i.atcorr.html
===================================================================
--- grass/trunk/imagery/i.atcorr/i.atcorr.html	2018-01-25 16:10:34 UTC (rev 72128)
+++ grass/trunk/imagery/i.atcorr/i.atcorr.html	2018-01-25 16:39:23 UTC (rev 72129)
@@ -646,15 +646,15 @@
 <tr><td>113</td><td>QuickBird Red band (0.590-0.710)</td></tr>
 <tr><td>114</td><td>QuickBird NIR1 band (0.715-0.918)</td></tr>
 
-<tr><td>115</td><td><b>Landsat 8 </b> Coastal Aerosol Band (0.427nm - 0.459nm)</td></tr>
-<tr><td>116</td><td>Landsat 8 Blue Band  (436nm - 527nm)</td></tr>
-<tr><td>117</td><td>Landsat 8 Green Band (512nm-610nm)</td></tr>
-<tr><td>118</td><td>Landsat 8 Red Band (625nm-691nm)</td></tr>
-<tr><td>119</td><td>Landsat 8 Panchromatic Band (488nm-692nm)</td></tr>
-<tr><td>120</td><td>Landsat 8 NIR Band (829nm-900nm)</td></tr>
-<tr><td>121</td><td>Landsat 8 Cirrus Band (1340nm-1409nm)</td></tr>
-<tr><td>122</td><td>Landsat 8 SWIR1 Band (1515nm - 1697nm)</td></tr>
-<tr><td>123</td><td>Landsat 8 SWIR2 Band (2037nm - 2355nm)</td></tr>
+<tr><td>115</td><td><b>Landsat 8 </b> Coastal Aerosol Band (433nm - 455nm)</td></tr>
+<tr><td>116</td><td>Landsat 8 Blue Band  (448nm - 515nm)</td></tr>
+<tr><td>117</td><td>Landsat 8 Green Band (525nm - 595nm)</td></tr>
+<tr><td>118</td><td>Landsat 8 Red Band (633nm - 677nm)</td></tr>
+<tr><td>119</td><td>Landsat 8 Panchromatic Band (498nm - 682nm)</td></tr>
+<tr><td>120</td><td>Landsat 8 NIR Band (845nm - 885nm)</td></tr>
+<tr><td>121</td><td>Landsat 8 Cirrus Band (1355nm - 1390nm)</td></tr>
+<tr><td>122</td><td>Landsat 8 SWIR1 Band (1540nm - 1672nm)</td></tr>
+<tr><td>123</td><td>Landsat 8 SWIR2 Band (2073nm - 2322nm)</td></tr>
 
 <tr><td>115</td><td><b>GeoEye 1</b> Panchromatic band (0.450-0.800)</td></tr>
 <tr><td>116</td><td>GeoEye 1 Blue Band  (0.450-0.510)</td></tr>

Modified: grass/trunk/imagery/i.atcorr/iwave.cpp
===================================================================
--- grass/trunk/imagery/i.atcorr/iwave.cpp	2018-01-25 16:10:34 UTC (rev 72128)
+++ grass/trunk/imagery/i.atcorr/iwave.cpp	2018-01-25 16:39:23 UTC (rev 72129)
@@ -3145,103 +3145,104 @@
 {
 
     /* Coastal Aerosol of landsat_8 */
-    static const float sr1[13] = {
-		.0001, .0025, .0248, .3860, .9087, .9806, .9867, .9966,
-		.9828, .8257, .2264, .0256, .0024
+    static const float sr1[14] = {
+        .0003, .0034, .0552, .5178, .9335, .9838, .9902, 1.0000,
+        .9777, .7456, .1596, .0145, .0017, .0000
     };
 	
     /* Blue of landsat_8 */
     static const float sr2[37] = {
-		.0000, .0002, .0005, .0016, .0069, .0429, .2714, .7907,
-		.9030, .9047, .8897, .8792, .8797, .8898, .8485, .8363,
-		.8685, .9115, .9317, .9549, .9564, .9838, .9895, .9681,
-		.9887, .9611, .9661, .9821, .9631, .9982, .8449, .1195,
-		.0053, .0013, .0005, .0001, .0000
+        .0000, .0001, .0003, .0010, .0037, .0202, .1309, .6088,
+        .8942, .9104, .8980, .8805, .8747, .8892, .8612, .8346,
+        .8659, .9014, .9188, .9430, .9624, .9660, .9856, .9755,
+        .9768, .9741, .9641, .9743, .9657, .9844, .9556, .3627,
+        .0139, .0021, .0008, .0002, .0001
     };
 	
     /* Green of landsat_8 */
-    static const float sr3[35] = {
-		.0000, .0003, .0009, .0022, .0049, .0133, .0415, .1676,
-		.5459, .8963, .9542, .9631, .9525, .9779, .9809, .9961,
-		.9838, .9612, .9479, .9721, .9534, .9743, .9810, .9733,
-		.9758, .9744, .9678, .9717, .9837, .9603, .8093, .4353,
-		.0878, .0100, .0010
+    static const float sr3[37] = {
+        .0000, .0000, .0002, .0008, .0018, .0042, .0104, .0335,
+        .1234, .4499, .8652, .9544, .9613, .9612, .9783, .9789,
+        1.0000, .9832, .9651, .9471, .9665, .9599, .9700, .9822,
+        .9672, .9770, .9800, .9685, .9796, .9763, .9742, .8569,
+        .5253, .1391, .0141, .0018, .0001
     };
 	
     /* Red of landsat_8 */
-    static const float sr4[23] = {
-		.0003, .0027, .0145, .1077, .5268, .9267, .9474, .9689,
-		.9836, .9783, .9556, .9550, 1.0000, .9831, .9730, .9945,
-		.9640, .9690, .9499, .4629, .0460, .0053, .0006
+    static const float sr4[25] = {
+        .0000, .0001, .0014, .0072, .0486, .2998, .8350, .9508,
+        .9573, .9842, .9832, .9594, .9544, .9817, .9885, .9770,
+        .9889, .9807, .9665, .9669, .7291, .1239, .0125, .0014,
+        .0001
     };
 	
     /* Pan of landsat_8 */
-    static const float sr5[82] = {
-		.0002, .0013, .0038, .0123, .0427, .1601, .4725, .7454,
-		.8319, .8553, .8596, .8577, .8585, .8583, .8502, .8582,
-		.8615, .8577, .8792, .8917, .9063, .9129, .9029, .9207,
-		.9130, .8857, .8794, .8742, .8754, .8917, .8741, .8869,
-		.9035, .9110, .9132, .9202, .9244, .9298, .9489, .9405,
-		.9457, .9394, .9467, .9340, .9408, .9580, .9682, .9665,
-		.9572, .9477, .9525, .9575, .9642, .9674, .9770, .9760,
-		.9696, .9728, .9658, .9667, .9721, .9793, .9711, .9534,
-		.9639, .9671, .9706, .9800, .9883, .9918, 1.0000, .9985,
-		.9926, .9858, .9139, .5244, .1673, .0462, .0152, .0067,
-		.0032, .0012
+    static const float sr5[84] = {
+        .0000, .0001, .0010, .0032, .0090, .0330, .1243, .3979,
+        .7148, .8242, .8490, .8612, .8582, .8571, .8606, .8515,
+        .8573, .8607, .8603, .8718, .8887, .9042, .9117, .9064,
+        .9199, .9162, .8927, .8781, .8757, .8724, .8899, .8800,
+        .8824, .9024, .9076, .9141, .9196, .9227, .9301, .9432,
+        .9403, .9449, .9425, .9431, .9338, .9393, .9524, .9678,
+        .9679, .9593, .9493, .9503, .9558, .9637, .9659, .9749,
+        .9779, .9693, .9729, .9678, .9668, .9690, .9810, .9728,
+        .9533, .9607, .9695, .9686, .9771, .9890, .9880, .9993,
+        .9991, .9946, .9859, .9348, .6102, .2170, .0576, .0190,
+        .0077, .0038, .0015, .0001
     };
 	
     /* Nir of landsat_8 */
     static const float sr6[27] = {
-		.0000, .0002, .0005, .0012, .0032, .0090, .0283, .1149,
-		.4035, .8177, .9868, .9884, .9898, .9740, .9512, .9523,
-		.9401, .9613, .9366, .7120, .2888, .0793, .0207, .0062,
-		.0019, .0006, .0001
+        .0000, .0002, .0005, .0012, .0032, .0090, .0283, .1149,
+        .4035, .8177, .9868, .9884, .9898, .9740, .9512, .9523,
+        .9401, .9613, .9366, .7120, .2888, .0793, .0207, .0062,
+        .0019, .0006, .0001
     };
 	
     /* Cirrus of landsat_8 */
-    static const float sr7[25] = {
-		.0001, .0004, .0009, .0016, .0030, .0063, .0170, .0560,
-		.1828, .5269, .8624, .9465, .9387, .9933, .9832, .9638,
-		.8727, .5295, .1910, .0538, .0162, .0056, .0018, .0007,
-		.0001
+    static const float sr7[27] = {
+        .0000, .0000, .0003, .0006, .0013, .0023, .0047, .0111,
+        .0345, .1154, .3867, .7721, .9009, .9312, .9917, 1.0000,
+        .9771, .8713, .6549, .2979, .0896, .0261, .0083, .0028,
+        .0011, .0002, .0000
     };
 	
     /* SWIR1 of landsat_8 */
-    static const float sr8[73] = {
-		.0001, .0003, .0006, .0010, .0016, .0023, .0033, .0046,
-		.0064, .0090, .0124, .0176, .0259, .0378, .0554, .0826,
-		.1202, .1755, .2529, .3528, .4736, .6052, .7213, .8047,
-		.8734, .9035, .9187, .9270, .9251, .9241, .9214, .9237,
-		.9346, .9451, .9464, .9489, .9513, .9548, .9615, .9591,
-		.9609, .9611, .9679, .9722, .9791, .9813, .9959, .9999,
-		.9966, .9826, .9551, .8983, .7965, .6654, .5099, .3684,
-		.2513, .1657, .1067, .0694, .0450, .0291, .0187, .0124,
-		.0082, .0054, .0036, .0024, .0015, .0009, .0005, .0003,
-		.0000
+    static const float sr8[74] = {
+        .0000, .0000, .0002, .0005, .0008, .0014, .0020, .0029,
+        .0040, .0055, .0079, .0110, .0153, .0218, .0326, .0479,
+        .0709, .1019, .1509, .2203, .3106, .4215, .5522, .6767,
+        .7715, .8541, .8958, .9130, .9251, .9264, .9238, .9228,
+        .9224, .9266, .9434, .9462, .9473, .9529, .9514, .9590,
+        .9592, .9615, .9605, .9647, .9700, .9769, .9813, .9886,
+        .9990, .9996, .9898, .9671, .9267, .8410, .7231, .5732,
+        .4230, .2918, .1960, .1285, .0828, .0528, .0346, .0225,
+        .0147, .0096, .0064, .0043, .0028, .0018, .0011, .0007,
+        .0004, .0001
     };
 	
     /* SWIR2 of landsat_8 */
     static const float sr9[125] = {
-		.0000, .0002, .0003, .0005, .0007, .0010, .0014, .0019,
-		.0024, .0032, .0041, .0054, .0071, .0094, .0123, .0159,
-		.0210, .0274, .0354, .0482, .0633, .0841, .1128, .1534,
-		.2028, .2673, .3425, .4315, .5225, .6134, .6897, .7665,
-		.8137, .8500, .8836, .8907, .9097, .9221, .9322, .9420,
-		.9431, .9464, .9497, .9510, .9531, .9509, .9475, .9494,
-		.9533, .9494, .9515, .9437, .9434, .9426, .9381, .9468,
-		.9474, .9473, .9341, .9390, .9347, .9264, .9369, .9295,
-		.9358, .9364, .9566, .9543, .9644, .9630, .9637, .9600,
-		.9578, .9502, .9588, .9576, .9520, .9607, .9493, .9619,
-		.9643, .9694, .9809, .9844, .9915, .9954, .9927, .9996,
-		.9944, .9860, .9891, .9765, .9742, .9757, .9737, .9584,
-		.9551, .9419, .9071, .8695, .7849, .6751, .5526, .4283,
-		.3157, .2284, .1617, .1143, .0803, .0567, .0404, .0294,
-		.0213, .0156, .0114, .0085, .0063, .0047, .0034, .0025,
-		.0018, .0012, .0008, .0005, .0002
+        .0000, .0001, .0003, .0004, .0007, .0009, .0013, .0017,
+        .0023, .0030, .0039, .0051, .0067, .0089, .0116, .0150,
+        .0199, .0259, .0337, .0454, .0598, .0794, .1067, .1447,
+        .1912, .2537, .3269, .4126, .5056, .5932, .6764, .7565,
+        .8032, .8463, .8757, .8861, .9081, .9180, .9310, .9414,
+        .9430, .9452, .9492, .9494, .9549, .9491, .9492, .9471,
+        .9555, .9478, .9516, .9450, .9419, .9450, .9384, .9470,
+        .9459, .9493, .9370, .9388, .9368, .9271, .9337, .9280,
+        .9361, .9351, .9514, .9520, .9638, .9635, .9633, .9607,
+        .9578, .9533, .9553, .9603, .9498, .9606, .9525, .9600,
+        .9656, .9655, .9793, .9842, .9883, .9977, .9926, 1.0000,
+        .9958, .9877, .9876, .9780, .9735, .9762, .9740, .9599,
+        .9551, .9472, .9148, .8836, .8044, .6985, .5776, .4527,
+        .3356, .2446, .1739, .1220, .0861, .0607, .0434, .0312,
+        .0226, .0166, .0122, .0090, .0067, .0050, .0037, .0027,
+        .0019, .0013, .0009, .0006, .0003
     };
 	
-    static const float wli[9] = {0.427, 0.436, 0.513, 0.626, 0.488, 0.830, 1.341, 1.516, 2.038};
-    static const float wls[9] = {0.459, 0.527, 0.600, 0.682, 0.692, 0.896, 1.402, 1.696, 2.350};
+    static const float wli[9] = {0.4275, 0.4350, 0.5100, 0.6225, 0.4850, 0.8300, 1.3375, 1.5125, 2.0375};
+    static const float wls[9] = {0.4625, 0.5275, 0.6025, 0.6850, 0.6950, 0.8975, 1.4050, 1.6975, 2.3500};
 
     ffu.wlinf = (float)wli[iwa-1];
     ffu.wlsup = (float)wls[iwa-1];
@@ -3251,21 +3252,21 @@
 
     switch(iwa)
     {
-    case 1: for(i = 0; i < 13; i++)  ffu.s[70+i] = sr1[i];
+    case 1: for(i = 0; i < 14; i++)  ffu.s[71+i] = sr1[i];
         break;
     case 2: for(i = 0; i < 37; i++)  ffu.s[74+i] = sr2[i];
         break;
-    case 3: for(i = 0; i < 35; i++)  ffu.s[105+i] = sr3[i];
+    case 3: for(i = 0; i < 37; i++)  ffu.s[104+i] = sr3[i];
         break;
-    case 4: for(i = 0; i < 23; i++)  ffu.s[150+i] = sr4[i];
+    case 4: for(i = 0; i < 25; i++)  ffu.s[149+i] = sr4[i];
         break;
-    case 5: for(i = 0; i < 82; i++)  ffu.s[95+i] = sr5[i];
+    case 5: for(i = 0; i < 84; i++)  ffu.s[94+i] = sr5[i];
         break;
     case 6: for(i = 0; i < 27; i++)  ffu.s[232+i] = sr6[i];
         break;
-    case 7: for(i = 0; i < 25; i++)  ffu.s[436+i] = sr7[i];
+    case 7: for(i = 0; i < 27; i++)  ffu.s[435+i] = sr7[i];
         break;
-    case 8: for(i = 0; i < 73; i++)  ffu.s[506+i] = sr8[i];
+    case 8: for(i = 0; i < 74; i++)  ffu.s[505+i] = sr8[i];
         break;
     case 9: for(i = 0; i < 125; i++)  ffu.s[715+i] = sr9[i];
         break;



More information about the grass-commit mailing list