Bathymetry and water column correction
LANDSAT 8 OLIP 
at Mulroy Bay, Ireland
Image courtesy of the U.S. Geological Survey
 
Using the Panchromatic band for water column correction
to derive water depth and spectral bottom signature:

Landsat 8 OLIP bandset used for this work
Purple=1Blue=2Green=3PAN=4Red=5NIR=6 and SWIR1=7

Work done july 2018
GSD 15 m
 
 
 
Tarawa subset tutorial script, continued

21 minutes
Syntax_Model
 
#LINE_5: run the Modeler  ===========================
#From END LINE4++++++++++++++++++++++++++++++
nice -20  ./4SM.8.07 -Process/nosu/22_Apr_2018  -Origin/Tarawa_Kiribati                            @@
-dB/tarawa-subset/27_1S_0s_0s/3_1/650_600/718.069_169.231                                            @@
-Mis/Tarawa/Kiribati/Spot/XS/NA/bOA/UTM_+19_008/0.0200_0.0200/1_JAN_1986               @@
-Lsw/027.4/014.8/006.5_Lsw_AutoCal                                                                                    @@
-dLsw/00.0/000.0/0-1.0_dLsw                                                                                                @@
@dLsw/000.0/000.0/000.0                                                                                                     @@
-Lw/0001.5/000.0/000.0_Lw_AutoCal                                                                                      @@
-M/0000001/00002/00003_M                                                                                                 @@
-Lm/0002.0/004.0/020.0_Lm                                                                                                  @@
-LsM/199.5/179.8/166.8_LsM_AutoCal                                                                                    @@
-LsM/176.7/158.2/145.8_LsM_cLM=0.870                                                                             @@
-CP/0157.3/103.5/015.7_0.75m                                                                                               @@
-KK/1_2_0.2900/Knir3.5.5/CoefK_1.0/mask_3                                                                            @@
-Z/NA0.00d/nDR_0_1000_zDTM/mask_3                                                                                   @@
-B/tclNe/cNorm2.50/LBref170_100/Bmin0/cLM    0.87    1.00                                                   @@
-deglint/vrbaD/GlintM13                                                                                                             @@
-extract/v/rawBDH/FullBDH/NIRband3/NIRmax255/mBPL4 /mask_3                                           @@
-calibrate/voAI/BDSNpzg/BDh_12_13                                                                                           @@
-Model/v/rt1.00/runWV2/sharpen_s/dTM/ZM30/mask_3                                                                 @@
-Smooth/1/d/smart-     -LL/10                                                                                                           @@
@-DN300/100/3/comment @-DDshp @-DNshp @-Eshp @-E/1/650/1/600     @-E70/610/150/320   @@
-ProfileAB/lZrvWBc/profile_2/chAB_2   1_2_3

exit
 
#Below is the list of your actions for LINE_5, in that order
1 Disable #LINE 4 and #exit
1 Disable @ProfileAB/lZrvwbc/profile_2/chAB_1_2
1 Add/Enable a -LK argument just after -Mis/... argument
1 Run the Modeler script: 4SM displays a Required LicenceKey in gedit
1 Remove/disable the @LK argument
1 Add a -CK/9kDgkF^HBHKKXK}959gkX~]Xxx argument just after -Mis/... argument: ciphered command line license key
1 Run the script: 4SM now process the image without any restriction
3:55==========
2 Manually erase from channel tarawa-subset.005 to channel tarawa-subset.028
2 Manually erase text file tarawa-subset_m4_255.gli if present
2 Change for Mask_4 in -Model/.../ZM30/Mask_4 argument: 4SM shall only process inside Mask_4
2 Run the Modeler script: 4SM writes missing files, creates text file tarawa-subset_m4_255.gli if not present,
2 then runs the Modeler only inside Mask_4, then launches OpenEV
6:35==========
3 Change for Mask_3 in -Model/v/rt1.00/dTM/ZM30/Mask_3: 4SM shall only process inside Mask_3
3 Manually erase text file tarawa-subset_m3_255.gli if present
3 Run the Modeler script: 4SM creates text file tarawa-subset_m3_255.gli if not present,
3 then runs the Modeler olny inside Mask_3, then launches OpenEV
8:30==========
4 Disable Mask_3 in -Model/.../ZM30/mask_3: 4SM shall process all pixels
4 Run the Modeler script: 4SM processes the whole image
9:35==========
5 Enable Mask_4 in -Model/.../ZM30/Mask_4: 4SM shall only process inside Mask_4
5 Disable smoothing  -smooth/1/d/smart- argument: no smoothing applied under Mask_4
5 Run the Modeler script: no smoothing applied under Mask_4, see channel_6
11:45==========
6 Enable Smoothing in -Smooth/1/d/smart- argument
6 Enable smoothing kernel radius at 5 pixels in -Smooth/5/d/smart- argument
6 Enable Mask_3 in -Model/.../Mask_3 argument: 4SM shall only process inside Mask_3
6 Run the Modeler script: very heavy smoothing was applied under Mask_3, see channel_6
13:25==========
7 Disable Mask in -Model/v/rt1.00/dTM/ZM30/mask_3
7 Enable smoothing kernel radius at 1 pixel in -Smooth/1/d/smart- argument
7 Run the Modeler script: very light smoothing over the whole image
15:25==========
8 Enable TOA -Top Of Atmosphere- in -B/TclNe/...  argument
8 Run the Modeler script: deglinted spectral raster results in channels_22_to_24 are TOA/SMOOTHED
17:00==========
9 Disable smoothing in -smooth/1/d/smart-  argument
9 Run the Modeler script: deglinted spectral raster results in channels_22_24 are TOA/NOT_SMOOTHED
18:05==========
10 Enable Chequerflag in -B/tClNe/... argument
10 Run the Modeler script: results are chequered
10 END LINE5
 
20 minutes
Syntax_Extract            Syntax_Calibrate             Syntax_B           Syntax_CP      
  
#LINE_6: run the Extractor/Calibrator/Modeler mBPL=3
#From END LINE4++++++++++++++++++++++++++++++
nice -20  ./4SM.8.07 -Process/nosu/22_Apr_2018  -Origin/Tarawa_Kiribati                            @@
-dB/tarawa-subset/27_1S_0s_0s/3_1/650_600/718.069_169.231                                            @@
-Mis/Tarawa/Kiribati/Spot/XS/NA/bOA/UTM_+19_008/0.0200_0.0200/1_JAN_1986               @@
-Lsw/027.4/014.8/006.5_Lsw_AutoCal                                                                                    @@
-dLsw/00.0/000.0/0-1.0_dLsw                                                                                                @@
@dLsw/000.0/000.0/000.0                                                                                                     @@
-Lw/0001.5/000.0/000.0_Lw_AutoCal                                                                                      @@
-M/0000001/00002/00003_M                                                                                                 @@
-Lm/0002.0/004.0/020.0_Lm                                                                                                  @@
-LsM/199.5/179.8/166.8_LsM_AutoCal                                                                                    @@
-LsM/176.7/158.2/145.8_LsM_cLM=0.870                                                                              @@
-CP/0157.3/103.5/015.7_0.75m                                                                                               @@
-KK/1_2_0.2900/Knir3.5.5/CoefK_1.0/mask_3                                                                              @@
-Z/NA0.00d/nDR_0_1000_zDTM/mask_3                                                                                   @@
-B/tclNe/cNorm2.50/LBref170_100/Bmin0/cLM    0.87    1.00                                                    @@
-deglint/vrbaD/GlintM13                                                                                                             @@
-extract/v/rawBDH/FullBDH/NIRband3/NIRmax255/mBPL4 /mask_3                                           @@
-calibrate/voAI/BDSNpzg/BDh_12_13                                                                                           @@
-Model/v/rt1.00/runWV2/sharpen_s/dTM/ZM30/mask_3                                                                 @@
-Smooth/1/d/smart-        -LL/10                                                                                                       @@
@-DN300/100/3/comment @-DDshp @-DNshp @-Eshp @-E/1/650/1/600     @-E70/610/150/320   @@
-ProfileAB/lZrvWBc/profile_2/chAB_2   1_2_3

exit

#Below is the list of your actions for LINE_6, in that order
1 Disable #LINE 5 and #exit
1 Disable @ProfileAB/...
1 Enable -Extract/... and -Calibrate/... arguments
1 Enable .../MBPL3    in -Extract/v/.../NIRmax255/MBPL3 argument, with an uppercase M, to extract only under Mask=3
1 Add .../MapBPL/... to -Extract/... argument:   -Extract/v/rawBDH/FullBDH/MapBPL/.....
1 Run the Extract/Calibrate script: extracts only pixels under Mask=3
1 Now, the calibration diagrams do not look too good: we need to investigate
1 MapBPL: launch OpenEV to view the Color Composite of channels 15, 16 and 17
6:00==========
2 Disable -extract/... argument
2 Disable @CP/0157.3/103.5/... argument
2 Enable Z2 vs Z3 insert .../BDSNpZG/... -Calibrate/.../BDSNpZG/... argument
2 Enable Ghost pixels .../BDSNpzG/... in -Calibrate/.../BDSNpzG/... argument
2 Enable CoefLM=1.35 in -B/tclNe/..../cLM1.35 argument
2 Run the Calibrate/... script: shows only pixels under Mask_3
2 Ghost pixels consolidate our interpretation
2 From 0 to ~1m, bottoms are ~1.35 times brighter, and oceanic waters from the hoas are much clearer
10:35==========
3 Copy NewLsM from your terminal, and paste in your script: -LsM/230.0/208.7/194.9_LsM_cLM=1.350
3 Disable CoefLM in -B/tclNe/.../cLM    1.35
3 Increase KIKJ from 0.29 to 0.46 in -KK/1_2_0.46/... argument
3 Run the Calibrate/... script: nice fit from 0 to ~5m in X1 vx X2 diagram
12:40==========
4 Change Knir from .../Knir3.5/... to .../Knir2.5/... in -KK/... argument
4 Run the Calibrate/... script:
4 Now an acceptable fit in X1,2 vs X3 diagram.
4 Now a very nice fit in the Z2 vs X3 insert.
14:25==========
5 Add a Calibration pixel from your terminal: -CP/172.96/109.40/021.10_1.00m  
5 Add a Calibration pixel from your terminal: -CP/072.57/021.79/000.0_4.50m
5 Add a Calibration pixel from your terminal: -CP/054.44/016.62/000.0_6.00m
5 Run the Calibrate/... script
16:20==========
6 Change from -CP/054.44/016.62/000.0_6.00m to -CP/062.44/015.62/000.0_6.00m
6 Run the Calibrate/... script
17:35==========
7 Disable -calibrate/... argument
7 Run the Model/... script:  still too much saturation in channel 9
7 Set CoefLM=1.07 in -B/tclNe/.../cLM1.07
7 Run the Model/... script
7 END LINE6
 

21 minutes
Syntax Extract             Syntax_Calibrate       Syntax Recode
 
 #LINE_7: produce bidim histograms,  and learn from them===
nice -20  ./4SM.8.07 -Process/nosu/22_Apr_2018  -Origin/Tarawa_Kiribati                            @@
-dB/tarawa-subset/27_1S_0s_0s/3_1/650_600/718.069_169.231                                            @@
-Mis/Tarawa/Kiribati/Spot/XS/NA/bOA/UTM_+19_008/0.0200_0.0200/1_JAN_1986               @@
-Lsw/027.4/014.8/006.5_Lsw_AutoCal                                                                     @@
-dLsw/00.0/000.0/0-1.0_dLsw                                                                                 @@
@dLsw/000.0/000.0/000.0                                                                                     @@
-Lw/0001.5/000.0/000.0_Lw_AutoCal                                                                     @@
-M/0000001/00002/00003_M                                                                                 @@
-Lm/0002.0/004.0/020.0_Lm                                                                                   @@
-LsM/199.5/179.8/166.8_LsM_AutoCal                                                                    @@
-LsM/176.7/158.2/145.8_LsM_cLM=0.870                                                               @@
-LsM/230.0/208.7/194.9_LsM_cLM=1.350                                                               @@
-CP/172.96/109.40/021.10_1.00m                                                                            @@
-CP/072.57/021.79/000.0_4.50m                                                                               @@
-CP/062.44/015.62/000.0_6.00m                                                                               @@
-KK/1_2_0.46/Knir2.5/CoefK_1.0/mask_3                                                                    @@
-Z/NA0.00d/nDR_0_1000_zDTM/mask_3                                                                     @@
-B/tclNe/cNorm2.50/LBref170_100/Bmin0/cLM   1.07     1.35                                    @@
-deglint/vrbaD/GlintM13                                                                                            @@
-extract/v/rawBDH/FullBDH/MapBPL/NIRband3/NIRmax255/MBPL3                         @@
-calibrate/voAI/BDSNpZG/BDh_12_13                                                                        @@
-Model/v/rt1.00/runWV2/sharpen_s/dTM/ZM30/mask_3                                                @@
-Smooth/1/d/smart-        -LL/10                                                                                     @@
@-DN300/100/3/comment @-DDshp @-DNshp @-Eshp @-E/1/650/1/600                    @@
@ProfileAB/LzrVWBc/profile_1/chAB_1_2_3                                                                 @@
@ProfileAB/Lzrvwbc/profile_1 /chAB_1_2_3                                                                  @@
@ProfileAB/lZrvwbc/profile_2/chAB_1_2                                                                       @@

exit
#Below is the list of your actions for LINE_7, in that order
1 Disable #LINE 6 and #exit
1 Enable -Extract/... and -Calibrate/... arguments
1 Change from .../MBPL3/... to .../mBPL2 in -Extract/... argument
1 Change from .../GlintM13 to. .../GlintM0 in -deglint/... argument: no deglinting applied
1 Change from .../BDh... to .../Bdh... in -Calibrate/... argument to get bare histograms
1 Disable -smooth/...: no smoothing applied
1 Create -E1shp rectangular shapefile to include only cloudless open oceanic waters
1 Add a -E1shp argument
1 Run the Extractor/Calibrator:
1 Investigate the bidim histograms of the glint over open waters, for the pairs Ls1,2 vs Ls3
6:30==========
2 Modify E1.shp rectangle to include Coud/shadow
2 Run the Extractor/Calibrator
2 Investigate the bidim histogram for open waters of the glint/cloud/shadow for the pairs Ls1,2 vs Ls3
2 Slope and intercept are virtually the same for glint and for cloud/shadow
8:15==========
3 Change E1.shp rectangle to satisfy your curiosity,
3 Run the Extractor/Calibrator
8:25==========
4 Disable @-E1shp
4 Run the Extractor/Calibrator
4 Change  from -Calibrate/voAI/... to -Calibrate/voaI/...
4 Run the Extractor/Calibrator: shows the pair 13
4 Change  -Calibrate/.../Bdh_12_13  to -Calibrate/.../Bdh_12_23
4 Run the Extractor/Calibrator: shows the pair 23
11:40==========
5 Change   -Calibrate/.../Bdh_12_23  to -Calibrate/.../BDh_12_23
5 Run the Extractor/Calibrator: now shows full diagram
12:40==========
6 Disable Extract/... and Calibrate/... arguments
6 Copy tarawa-subset.004 into tarawa-subset.mSE
6 Create or uncompress a mask_10 shapefile
6 Append a -Recode/LT10_InChannel_4_into_10_OutChannel_4/mask_10 argument
6 Run the Recoder script: view channel 4 in OpenEV
17:20==========
7 Disable @Recode/... argument
7 Enable Extract/... and Calibrate/... arguments
7 Change from /mBPL2  to /mBPL10  in -Extract/... argument
7 Change from .../BDh_12_23 to .../Bdh_12_23 in -Calibrate/... argument
7 Run the -Extract/-Calibrate script
7 BiDim histogram shows only land pixels, and marime pixels masked at 10
20:10==========
8 Copy tarawa-subset.mSE to tarawa-subset.004
8 Run the -Extract/-Calibrate script
8 Now only land pixels are shown, because no pixels are masked at 10 any more
8 END LINE7
 
 



Créer un site
Créer un site