1IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Operational Implementation Operational Implementation StrategiesStrategies
Moderator: Bryan Franz
Topic 3
2IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
GoalsGoals
Identification of issues unique to satellite retrieval of IOPs
Understanding of satellite Rrs generation
Agreement on common IOP model inputs (aw & bbw)
Agreement on algorithm failure conditions & masking
Understanding impact of IOP inversion at L2 versus L3
3IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Satellite FocusSatellite Focus
Multiple sensors - varying wavelength sets SeaWIFS, MODIS, MERIS --> OCM-2, VIIRS, OLCI Multiple data processing systems (NASA, ESA, ISRO)
Global application wide range of water classes, distribution dominated by low-Ca water
large data volumes, want best IOP algorithm that is “practical”
Imperfect Lw retrieval satellite sensor calibration & noise atmospheric correction error
Rrs normalization
wide range of viewing geometry (0 < v < 60)
transition through interface
4IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Multi-Sensor Processing FrameworkMulti-Sensor Processing Framework
Level-1 to Level-2(common algorithms)
SeaWiFS L1A- or -
MODISA L1BMODIST L1B
OCTS L1AMOS L1BOSMI L1ACZCS L1AMERIS L1BOCM L1B
Level-2 to Level-3
Level-2 File
Level-3 GlobalProduct
observed radiances
AOPsRrs()
IOPsa(), bb()
Level-2 FileLevel-2 File
atmospheric correction
Lw normalization
derived products
flags (failure & quality)
observedLt()
, 0,
spatial averaging
temporal averaging
masking
5IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
RRrsrs from Satellite Radiances from Satellite Radiances
td() Lw() = Lt() / tg() / fp() - TLg() - tLf() - Lr() - La()
TOA gas pol glint whitecap air aerosol
nLw() = Lw() / td0() 0 f0
Sun full-band water-leaving radiance normalized to non-attenuating atmosphere with Sun overhead
fb
nLw() = nLw() ffb correct from full-band to nominal
10-nm center-band via Morel model
nLw() = nLw() ex correct for Fresnel reflection
refraction and inhomogeneity of subsurface light field via LUT
0 (f/Q)0
(f/Q)
Rrs() = nLw() / F0 () ex ex solar irradiance from Thuillier 2002
10-nm square-band-pass average
6IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
IOP Model Implementation IssuesIOP Model Implementation Issues
transition across air/sea interface Lee et al. 2002
pure sea-water values (aw & bbw)
aw: Pope & Fry, Kou et al. 1993, bbw: Smith & Baker 1981
10-nm square band-pass average (consistent with Rrs retrieval)
salinity & temperature sensitivity significant impact on IOP retrieval when aw & bbw = f(T,S)
need to identify ancillary data sources
€
Rrs(0−) =
Rrs(0+)
0.52 +1.7Rrs(0+)
7IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Inversion Methods and EfficiencyInversion Methods and Efficiency
sequential (class 1 & 3)
model-specific (wavelength-specific) may be iterative
simultaneous (class 2)
Matrix inversion– Lower-Upper Decomposition (LUD)– Singular-Valued Decomposition (SVD)
Iterative cost-function minimization– Levenburg-Marquart (LM)– Downhill Simplex (Amoeba, AMB)
None 38
QAA 39
GSM SVD 42
GSM LM 55
GSM AMB 98
Algorithm Time (secs)
one SeaWIFS GAC orbit
8IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
IOP Models Implemented at NASAIOP Models Implemented at NASA
GSM (Garver-Siegel-Maritorena) a, aph, adg, bb, bbp, Ca
QAA (Quasi-Analytical Algorithm) a, aph, adg, bb, bbp
LAS (Loisel and Stramski) a, b, c, bb, bbp
PML (Plymouth Marine Labs) a, aph, adg, bb, bbp
HAL (Hoge & Lyon, via GIOP) a, aph, adg, bb, bbp
GIOP (Generalized IOP Model) a, aph, adg, bb, bbp, Ca, flags, , S
TBD: NIWA Boss & Roesler
9IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Generalized IOP Model (GIOP)Generalized IOP Model (GIOP)
specify sensor wavelengths to fit e.g., 412,443,490,510,555 e.g., 412,490,555
select aph form and set params
tabulated: , ap*()
gaussian: ,
select adg form and set params
exponential: , S
select bbp form and set params
power law: , power law: , via Hoge & Lyon
power law: , via QAA
select Rrs[0-] to bb/(a+bb) quadratic: g1, g2 f/Q: (tbd)
specify inversion method Levenburg-Marquart Amoeba (downhill simplex) Lower-Upper Decomposition Singular-Value Decomposition
specify output products a (), aph (), adg (), bb (), bbp ()
= any sensor wavelength(s)
Ca (given ap* at ) (dynamic model params) internal flags
10IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
specify sensor wavelengths to fit e.g., 412,443,490,510,555 e.g., 412,490,555
select aph form and set params
tabulated: , ap*()
gaussian: ,
select adg form and set params
exponential: , S
select bbp form and set params
power law: , power law: , via Hoge & Lyon
power law: , via QAA
Generalized IOP Model (GIOP)Generalized IOP Model (GIOP)
select Rrs[0-] to bb/(a+bb) quadtratic: g1, g2 f/Q: (tbd)
specify inversion method Levenburg-Marquart Amoeba (downhill simplex) Lower-Upper Decomposition Singular-Value Decomposition
specify output products a (), aph (), adg (), bb (), bbp ()
= any sensor wavelength(s)
Ca (given ap* at ) (dynamic model params) internal flags
5-Band GSM
11IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
specify sensor wavelengths to fit e.g., 412,443,490,510,555 e.g., 412,490,555
select aph form and set params
tabulated: , ap*()
gaussian: ,
select adg form and set params
exponential: , S
select bbp form and set params
power law: , power law: , via Hoge & Lyon
power law: , via QAA
Generalized IOP Model (GIOP)Generalized IOP Model (GIOP)
select Rrs[0-] to bb/(a+bb) quadratic: g1, g2 f/Q: (tbd)
specify inversion method Levenburg-Marquart Amoeba (downhill simplex) Lower-Upper Decomposition Singular-Value Decomposition
specify output products a (), aph (), adg (), bb (), bbp ()
= any sensor wavelength(s)
Ca (given ap* at ) (dynamic model params) internal flags
Hoge & Lyon
12IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Flags & MasksFlags & Masks
13IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Multi-Sensor Processing FrameworkMulti-Sensor Processing Framework
Level-1 to Level-2(common algorithms)
SeaWiFS L1A- or -
MODISA L1BMODIST L1B
OCTS L1AMOS L1BOSMI L1ACZCS L1AMERIS L1BOCM L1B
Level-2 to Level-3
Level-2 File
Level-3 GlobalProduct
observed radiances
AOPsRrs()
IOPsa(), bb()
Level-2 FileLevel-2 File
atmospheric correction
Lw normalization
derived products
flags (failure & quality)
observedLt()
, 0,
spatial averaging
temporal averaging
masking
14IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Level-2 Flags & Level-3 MaskingLevel-2 Flags & Level-3 Masking
BIT NAME DESCRIPTION
01 ATMFAIL Atmospheric correction failure
02 LAND Pixel is over land
03 BADANC Reduced quality of ancillary data
04 HIGLINT High sun glint
05 HILT Observed radiance very high or saturated
06 HISATZEN High sensor view zenith angle
07 COASTZ Pixel is in shallow water
08 NEGLW Negative water-leaving radiance retrieved
09 STRAYLIGHT Straylight contamination is likely
10 CLDICE Probable cloud or ice contamination
11 COCCOLITH Coccolithophores detected
12 TURBIDW Turbid water detected
13 HISOLZEN High solar zenith
14 HITAU High aerosol optical thickness
15 LOWLWVery low water-leaving radiance (cloud shadow)
16 CHLFAIL Derived product algorithm failure
BIT NAME DESCRIPTION
17 NAVWARN Navigation quality is reduced
18 ABSAER possible absorbing aerosol
19 TRICHO Possible trichodesmium contamination
20 MAXAERITER Aerosol iterations exceeded max
21 MODGLINT Moderate sun glint contamination
22 CHLWARN Derived product quality is reduced
23 ATMWARN Atmospheric correction is suspect
24 DARKPIXEL Rayleigh-subtracted radiance is negative
25 SEAICE Possible sea ice contamination
26 NAVFAIL Bad navigation
27 FILTER Pixel rejected by user-defined filter
28 SSTWARN SST quality is reduced
29 SSTFAIL SST quality is bad
30 HIPOL High degree of polarization
31 PRODFAIL Derived product failure
32 OCEAN Not cloud or land
Level-2 flags used as masks in Level-3 processing
15IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Proposed Conditions for IOP Product FailureProposed Conditions for IOP Product Failure
Rrs < 0 in any required band?
not required for Rrs() minimization
required for matrix inversion (no positive roots in Gordon quad.) required for band ratio component algorithms (e.g., QAA, HAL)
Failure within model computation e.g., inputs out of range of LUTs, divide by zero errors
Tests on IOP retrievals (for 400 < < 600)
0.95 aw() < a() < 5.0
-0.05 aw() < aph() < 5.0
-0.05 aw() < adg() < 5.0
0.95 bbw() < bb() < 0.015
-0.05 bbw() < bbp() < 0.015
initial proposal employed in some of our global analyses for this workshop
or Rrs < -()
16IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
L2 vs L3 InversionL2 vs L3 Inversion
17IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
IOP Inversion at Level-2IOP Inversion at Level-2
Level-1 to Level-2(common algorithms)
SeaWiFS L1A- or -
MODISA L1BMODIST L1B
OCTS L1AMOS L1BOSMI L1ACZCS L1AMERIS L1BOCM L1B
Level-2 to Level-3
Level-2 File
Level-3 GlobalProduct
observed radiances
AOPsRrs()
IOPsa(), bb()
Level-2 FileLevel-2 File
atmospheric correction
Lw normalization
derived products
flags (failure & quality)
observedLt()
, 0,
Standard NASA Approach
18IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
IOP Inversion at Level-3IOP Inversion at Level-3
Level-1 to Level-2(common algorithms)
SeaWiFS L1A- or -
MODISA L1BMODIST L1B
OCTS L1AMOS L1BOSMI L1ACZCS L1AMERIS L1BOCM L1B
Level-2 to Level-3
Level-2 File
Level-3 GlobalProduct
observedLt()
, 0,
AOPsRrs()
Level-2 FileLevel-2 File
atmospheric correction
Lw normalization
derived products
flags (failure & quality)
Level-3 GlobalProduct
IOPsa(), bb()
averagedRrs()
, 0,
Alternative Approach
19IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
L2 vs L3 Inversion: GSM ModelL2 vs L3 Inversion: GSM Model
20IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
L2 vs L3 Inversion: GSM ModelL2 vs L3 Inversion: GSM Model
bb() < 0.015 maskGSM: Largest differences in eutrophic bb.
21IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
L2 vs L3 Inversion: QAA ModelL2 vs L3 Inversion: QAA Model
QAA: Largest differences in eutrophic a (band ratio algorithm, mean of ratio not same as ratio of means).
22IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
L2 vs L3 Inversion: PML ModelL2 vs L3 Inversion: PML Model
PML: differences everywhere (f/Q from mean geometry)
Oligotrophic Mesotrophic Eutrophica(443)
bb(443)
23IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Model-to-Model DifferencesModel-to-Model Differences
Oligotrophic Mesotrophic Eutrophica(443)
bb(443)
24IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
My ViewMy View
I like simultaneous solutions (class-1) take advantage of full spectral suite, readily adapted to multiple sensors,
easy to incorporate new ideas or alternative basis functions.
I prefer Rrs minimization to matrix inversion
can handle negative Rrs (small Rrs +/- noise)
seems less sensitive to noise (perhaps a weighting issue)
Efficiency in algorithm/inversion selection is not a primary concern satellite data processing is i/o intensive (exception Boss & Roesler)
Inversion at Level-3 vs Level-2 is not a primary concern differences between popular models are much greater
Mask all IOP products at Level-3 if: any one product exceeds valid (TBD) range
25IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
DiscussDiscuss ... ...
26IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
GoalsGoals
Identification of issues unique to satellite retrieval of IOPs
Understanding of satellite Rrs generation
Agreement on common IOP model inputs (aw & bbw)
Agreement on algorithm failure conditions & masking
Understanding impact of IOP inversion at L2 versus L3
27IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
28IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Inversion MethodInversion Method
29IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Inversion MethodsInversion Methods
sequential
model-specific may be iterative
simultaneous
Iterative cost-function minimization– Levenburg-Marquart (LM)– Downhill Simplex (Amoeba, AMB)
Matrix inversion– Lower-Upper Decomposition (LUD)– Singular-Valued Decomposition (SVD)€
[Rrsm (λ ) − Rrs(λ )]
2
σ λ2
λ
∑
A x = b
€
a(λ 0) = f (Rrs(λ1),Rrs(λ 2),...)
bb (λ 0) = f (Rrs(λ 0),a(λ 0))
30IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
RRrsrs Minimization vs Matrix Inversion Minimization vs Matrix Inversion
a(443), 6-Band GSM Model, LM Fit
a(443), 5-Band GSM Model, LM Fit
a(443), 6-Band GSM Model, SVD Fit
a(443), 5-Band GSM Model, SVD Fit
5-Band = 412,443,490,510,5556-Band = 5-Band + 670
0.01 1.0a(443)
31IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Matrix Inversion: Linearization IssueMatrix Inversion: Linearization Issue
Rrs[0-] = g1 u + g2 u2
where u bb/(a+bb)
where v = 1 - 1/u
aph() + adg ( + v bbp() = -[aw() + v bbw()]
u aph() + u adg ( + (u-1) bbp() = -[u aw() + (u-1) bbw()]
a = -v bb
u a = (1 - u) bb
1) Traditional Approach: System of Equations Proportional to 1/Rrs
2) Alternate Approach: System of Equations Proportional to Rrs
Rrs[0-] = f/Q u
- or -
32IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Alternate Linearization Improves Inversion ConsistencyAlternate Linearization Improves Inversion Consistency
Linearization Method 2
a(443) GSM 6-Band
a(443) GSM 6-Band
Linearization Method 1
LM LM
SVDSVD
a(443) Global bb(443) Global
a(443) Global bb(443) Global
LM
SVD
LM
SVD
33IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Matrix Inversion Still Missing Highs in a & bMatrix Inversion Still Missing Highs in a & bbb
SVD AmoebaEutrophic Waters, 5-Band GSMLM vs SVD
NOMAD aph(443)
a(443)
bb(443)
6-Band
3-Band
5-Band
4-Band
34IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
UncertaintiesUncertainties
35IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Standard Deviation of RStandard Deviation of Rrsrs Distribution DistributionSeaWiFS March 2005SeaWiFS March 2005
412 443
510490
555 670
0.0 0.005reflectance units
36IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
MiscMisc
37IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Trophic SubsetsTrophic Subsets
Deep-Water (Depth > 1000m) Oligotrophic (Chlorophyll < 0.1)
Mesotrophic (0.1 < Chlorophyll < 1) Eutrophic (1 < Chlorophyll < 10)
38IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
SalinitySalinity
39IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
ap*ap*
I used the Bricaud function to compute aph* for 25 chl concentrations between0.05 and 3 (evenly distributed in log space), then computed the averagespectra and spit out the 10nm wide aph* values for SeaWiFS wavelengths:
In the attached plot, the average aph* spectra is the white line, the10nm (wvl-5 <= wvl < wvl+5) version is in blue, and GSM is in red.
40IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
Model Differences: Global ViewModel Differences: Global View
41IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
QAA vs 6-Band GSM: a(443) & a(555)QAA vs 6-Band GSM: a(443) & a(555)
Oligotrophic Mesotrophic Eutrophic
443
555
GSM
QAA
1.05 aw
42IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
QAA - GSM: a(443) & a(555)QAA - GSM: a(443) & a(555)
Oligotrophic Mesotrophic Eutrophic
443
555
43IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
QAA vs 6-Band GSM: bb(443) & bb(555)QAA vs 6-Band GSM: bb(443) & bb(555)
Oligotrophic Mesotrophic Eutrophic
443
555
GSM
QAA
GSM
QAA
44IOP Algorithm Workshop, Ocean Optics XIX, 3-4 Oct 2008, B. Franz, NASA/OBPG
QAA - GSM: bb(443) & bb(555)QAA - GSM: bb(443) & bb(555)
Oligotrophic Mesotrophic Eutrophic
443
555