If x is a Satellite object, the minimum raw count value (x) is computed using
calcDODN
. If the TOA solar irradiance is not part of the
Satellite object's metadata, it is computed using
calcTOAIrradRadRef
, calcTOAIrradTable
or
calcTOAIrradModel
.
The dark object subtraction approach is based on an approximation
of the atmospheric path radiance (i.e. upwelling radiation which is
scattered into the sensors field of view, aka haze) using the reflectance of a
dark object (i.e. reflectance ~1%).
Chavez (1988) proposed a method which uses the dark object reflectance
in one band to predict the corresponding path radiances in all other
band_wls
. This is done using a relative radiance model which depends on
the wavelength and overall atmospheric optical thickness (which is estimated
based on the dark object's DN value). This has the advantage that the path
radiance is actually correlated across different sensor band_wls
and
not computed individually for each band using independent dark objects. He
proposed a relative radiance model which follows a wavelength dependent
scattering that ranges from a power of -4 over -2, -1, -0.7 to -0.5 for very
clear over clear, moderate, hazy to very hazy conditions. The relative
factors are computed individually for each 1/1000 wavelength within each band
range and subsequently averaged over the band as proposed by Goslee (2011).
The atmospheric transmittance towards the sensor (Tv) is approximated by
1.0 (DOS2, Chavez 1996) or Rayleigh scattering (DOS4, Moran et al. 1992)
The atmospheric transmittance from the sun (Tz) is approximated by the
cosine of the sun zenith angle (DOS2, Chavez 1996) or again using Rayleigh
scattering (DOS4, Moran et al. 1992).
The downwelling diffuse irradiance is approximated by 0.0 (DOS2, Chavez 1996)
or the hemispherical integral of the path radiance (DOS4, Moran et al. 1992).
Equations for the path radiance are taken from Song et al. (2001).
For some sensors, the band wavelengths are already included. See
lutInfo()[grepl("_BANDS", names(lutInfo()$META))]
if your sensor is
included. To retrieve a sensor, use lutInfo()$<Sensor ID>_BANDS
.