Atmospheric / Topographic Correction for Satellite Imagery

Atmospheric / Topographic Correction for Satellite Imagery
Atmospheric / Topographic Correction for Satellite Imagery
(ATCOR-2/3 User Guide, Version 8.2 BETA, February 2012)
R. Richter1 and D. Schl¨apfer2
DLR - German Aerospace Center, D - 82234 Wessling, Germany
2
ReSe Applications, Langeggweg 3, CH-9500 Wil SG, Switzerland
DLR-IB 565-02/12
1
2
The cover image shows a true color subset of a Landsat-7 ETM+ scene with lake Constance at
the Austrian-German-Swiss border (top left), acquired 2 June 2000. The top right image is the
atmospherically corrected scene employing a haze removal over land and water. The haze removal
over water is one of the new features of the 2011 release. The bottom part presents a zoomed view.
The water mask is derived from the DEM file of this scene, because a unique water classification
with exclusively spectral criteria is not possible in this scene. A correct water/land mask is critical
for the quality of the separate haze removal algorithms over land and water.
ATCOR-2/3 User Guide, Version 8.2.0, February 2012
Authors:
R. Richter1 and D. Schl¨
apfer2
1 DLR - German Aerospace Center, D - 82234 Wessling , Germany
2 ReSe Applications, Langeggweg 3, CH-9500 Wil SG, Switzerland
c All rights are with the authors of this manual.
Distribution:
ReSe Applications Schl¨
apfer
Langeggweg 3, CH-9500 Wil, Switzerland
Updates: see ReSe download page: www.rese.ch/download
R trademark is being used with the expressed permission of the owner, the United
The MODTRAN
States of America, as represented by the United States Air Force.
Contents
1 Introduction
2 Basic Concepts in the Solar Region
2.1 Radiation components . . . . . . .
2.2 BRDF correction . . . . . . . . . .
2.3 Spectral calibration . . . . . . . . .
2.4 Inflight radiometric calibration . .
2.5 De-shadowing . . . . . . . . . . . .
11
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
14
16
19
21
23
24
3 Basic Concepts in the Thermal Region
27
4 Workflow
4.1 Menus Overview . . . . . . . . . . . .
4.2 First steps with ATCOR . . . . . . . .
4.3 Survey of processing steps . . . . . . .
4.4 Directory structure of ATCOR . . . .
4.5 Convention for file names . . . . . . .
4.6 User-defined hyperspectral sensors . .
4.6.1 Definition of a new sensor . . .
4.7 Spectral smile sensors . . . . . . . . .
4.8 Haze, cloud, water map . . . . . . . .
4.9 Processing of multiband thermal data
4.10 External water vapor map . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
29
29
31
34
35
35
37
37
40
42
43
47
5 Description of Modules
5.1 Menu: File . . . . . . . . . . . . . . . .
5.1.1 Display ENVI File . . . . . . . .
5.1.2 Show Textfile . . . . . . . . . . .
5.1.3 Select Input Image . . . . . . . .
5.1.4 Import . . . . . . . . . . . . . . .
5.1.5 Plot Sensor Response . . . . . .
5.1.6 Plot Calibration File . . . . . . .
5.1.7 Show System File . . . . . . . . .
5.1.8 Edit Preferences . . . . . . . . .
5.2 Menu: New Sensor . . . . . . . . . . . .
5.2.1 Define Sensor Parameters . . . .
5.2.2 Create Channel Filter Files . . .
5.2.3 BBCALC : Blackbody Function .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
48
49
49
52
52
52
53
53
53
54
56
57
57
59
3
CONTENTS
5.3
5.4
5.5
5.6
5.7
5.8
5.2.4
Menu:
5.3.1
5.3.2
5.3.3
5.3.4
5.3.5
5.3.6
5.3.7
5.3.8
5.3.9
5.3.10
5.3.11
5.3.12
Menu:
5.4.1
5.4.2
5.4.3
5.4.4
Menu:
5.5.1
5.5.2
5.5.3
5.5.4
Menu:
5.6.1
5.6.2
5.6.3
Menu:
5.7.1
5.7.2
5.7.3
5.7.4
5.7.5
5.7.6
5.7.7
5.7.8
5.7.9
5.7.10
5.7.11
Menu:
5.8.1
4
RESLUT : Resample Atm. LUTS from Database . .
Atm. Correction . . . . . . . . . . . . . . . . . . . .
The ATCOR main panel . . . . . . . . . . . . . . . .
ATCOR2: multispectral sensors, flat terrain . . . . .
ATCOR3: multispectral sensors, rugged terrain . . .
ATCOR2: User-defined Sensors . . . . . . . . . . . .
ATCOR3: User-defined Sensors . . . . . . . . . . . .
SPECTRA module . . . . . . . . . . . . . . . . . . .
Aerosol Type . . . . . . . . . . . . . . . . . . . . . .
Visibility Estimate . . . . . . . . . . . . . . . . . . .
Inflight radiometric calibration module . . . . . . . .
Shadow removal panels . . . . . . . . . . . . . . . .
Panels for Image Processing . . . . . . . . . . . . . .
Start ATCOR Process (Tiled / from ∗.inn) . . . . .
Topographic . . . . . . . . . . . . . . . . . . . . . . .
Slope/Aspect . . . . . . . . . . . . . . . . . . . . . .
Skyview Factor . . . . . . . . . . . . . . . . . . . . .
Shadow Mask . . . . . . . . . . . . . . . . . . . . . .
DEM Smoothing . . . . . . . . . . . . . . . . . . . .
Filter . . . . . . . . . . . . . . . . . . . . . . . . . .
Resample a Spectrum . . . . . . . . . . . . . . . . .
Spectral Polishing: Statistical Filter . . . . . . . . .
Spectral Polishing: Radiometric Variation . . . . . .
Spectral Smile Interpolation . . . . . . . . . . . . . .
Simulation . . . . . . . . . . . . . . . . . . . . . . . .
TOA/At-Sensor Radiance Cube . . . . . . . . . . . .
At-Sensor Apparent Reflectance . . . . . . . . . . .
Resample Image Cube . . . . . . . . . . . . . . . . .
Tools . . . . . . . . . . . . . . . . . . . . . . . . . . .
Solar Zenith and Azimuth . . . . . . . . . . . . . . .
SPECL: Spectral Reflectance Classification . . . . .
SPECL for User Defined Sensors . . . . . . . . . . .
Nadir normalization (Wide FOV Imagery) . . . . . .
Quick Topographic (no atm.) Correction . . . . . .
Add a Blue Spectral Channel . . . . . . . . . . . . .
Spectral Smile Detection . . . . . . . . . . . . . . . .
Spectral Calibration (Atm. Absorption Features) . .
Calibration Coefficients with Regression . . . . . . .
Convert High Res. Database (New Solar Irradiance)
Convert .atm for another Irradiance Spectrum . . .
Help . . . . . . . . . . . . . . . . . . . . . . . . . . .
Help Options . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
59
61
61
61
61
62
62
65
66
66
66
69
72
77
78
78
78
79
80
82
82
82
83
84
87
87
87
88
89
89
90
90
90
91
92
92
94
96
97
97
99
99
6 Batch Processing Reference
100
6.1 Using the batch mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.2 Batch modules, keyword-driven modules . . . . . . . . . . . . . . . . . . . . . . . . . 101
CONTENTS
5
7 Value Added Products
108
7.1 LAI, FPAR, Albedo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
7.2 Surface energy balance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
8 Sensor simulation of hyper/multispectral imagery
116
9 Implementation Reference and Sensor Specifics
9.1 The Monochromatic atmospheric database . . . . . . . . . . . . . . . . . . . . . .
9.1.1 Visible / Near Infrared region . . . . . . . . . . . . . . . . . . . . . . . . .
9.1.2 Thermal region . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.1.3 Database update with solar irradiance . . . . . . . . . . . . . . . . . . . .
9.1.4 Sensor-specific atmospheric database . . . . . . . . . . . . . . . . . . . . .
9.1.5 Resample sensor-specific atmospheric LUTs with another solar irradiance
9.2 Supported I/O file types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.3 Preference parameters for ATCOR . . . . . . . . . . . . . . . . . . . . . . . . . .
9.4 Job control parameters of the ”inn” file (former ”ini”) . . . . . . . . . . . . . . .
9.5 Problems and Hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6 Metadata files (geometry and calibration) . . . . . . . . . . . . . . . . . . . . . .
9.6.1 Landsat-7 ETM+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.2 SPOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.3 ALOS AVNIR-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.4 Ikonos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.5 Quickbird . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.6 IRS-1C/1D Liss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.7 IRS-P6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.8 ASTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.9 DMC (Disaster Monitoring Constellation) . . . . . . . . . . . . . . . . . .
9.6.10 RapidEye . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.11 GeoEye-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.6.12 WorldView-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
121
121
121
122
123
124
124
125
127
130
136
138
138
139
141
141
142
143
143
143
144
144
145
145
10 Theoretical Background
10.1 Basics on radiative transfer . . . . . . . . . . . . . . . . .
10.1.1 Solar spectral region . . . . . . . . . . . . . . . . .
10.1.2 Integrated Radiometric Correction (IRC) . . . . .
10.1.3 Spectral solar flux, reflected surface radiance . . .
10.1.4 Thermal spectral region . . . . . . . . . . . . . . .
10.2 Masks for haze, cloud, water, snow . . . . . . . . . . . . .
10.3 Quality layers . . . . . . . . . . . . . . . . . . . . . . . . .
10.4 Standard atmospheric conditions . . . . . . . . . . . . . .
10.4.1 Constant visibility (aerosol) and atmospheric water
10.4.2 Aerosol retrieval and visibility map . . . . . . . . .
10.4.3 Water vapor retrieval . . . . . . . . . . . . . . . .
10.5 Non-standard conditions . . . . . . . . . . . . . . . . . . .
10.5.1 Empirical methods for BRDF correction . . . . . .
10.5.2 Haze removal over land . . . . . . . . . . . . . . .
10.5.3 Haze or sun glint removal over water . . . . . . . .
10.5.4 Cirrus removal . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
146
146
146
153
154
155
159
163
165
165
166
171
173
173
177
179
180
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
vapor
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
CONTENTS
10.5.5 De-shadowing . . . . . . . . . . . .
10.6 Summary of atmospheric correction steps
10.6.1 Algorithm for flat terrain . . . . .
10.6.2 Algorithm for rugged terrain . . .
10.7 Spectral classification of reflectance cube .
10.8 Accuracy of the method . . . . . . . . . .
References
6
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
183
189
189
190
191
191
193
A Altitude Profile of Standard Atmospheres
199
B Comparison of Solar Irradiance Spectra
202
List of Figures
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
Visibility, AOT, and total optical thickness, atmospheric transmittance.
Schematic sketch of solar radiation components in flat terrain. . . . . . .
Nadir normalization of an image with hot-spot geometry. . . . . . . . .
BRDF correction in rugged terrain imagery. . . . . . . . . . . . . . . . .
Geometric function G for three thresholds of βT . . . . . . . . . . . . . .
Wavelength shifts for an AVIRIS scene. . . . . . . . . . . . . . . . . . .
Radiometric calibration with multiple targets using linear regression. . .
Sketch of a cloud shadow geometry. . . . . . . . . . . . . . . . . . . . . .
De-shadowing of an Ikonos image of Munich. . . . . . . . . . . . . . . .
Zoomed view of central part of Figure 2.9. . . . . . . . . . . . . . . . . .
3.1
3.2
Atmospheric transmittance in the thermal region. . . . . . . . . . . . . . . . . . . . . 27
Radiation components in the thermal region. . . . . . . . . . . . . . . . . . . . . . . 28
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
Top level graphical interface of ATCOR. . . . . . . . . . . . . . . . . . . . . . . . . .
Top level graphical interface of ATCOR: ”File”. . . . . . . . . . . . . . . . . . . . . .
Top level graphical interface of ATCOR: ”New Sensor”. . . . . . . . . . . . . . . . .
Topographic modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Top level graphical interface of ATCOR: ”Atmospheric Correction”. . . . . . . . . .
ATCOR panel for flat terrain imagery. . . . . . . . . . . . . . . . . . . . . . . . . . .
Image processing options. Right panel appears if a cirrus band exists. . . . . . . . .
Panel for DEM files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Typical workflow of atmospheric correction. . . . . . . . . . . . . . . . . . . . . . . .
Input / output image files during ATCOR processing. . . . . . . . . . . . . . . . . .
Directory structure of ATCOR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Template reference spectra from the ’spec lib’ library. . . . . . . . . . . . . . . . . .
Directory structure of ATCOR with hyperspectral add-on. . . . . . . . . . . . . . . .
Supported analytical channel filter types. . . . . . . . . . . . . . . . . . . . . . . . .
Optional haze/cloud/water output file. . . . . . . . . . . . . . . . . . . . . . . . . . .
Path radiance and transmittace of a SEBASS scene derived from the ISAC method.
Comparison of radiance and temperature at sensor and at surface level. . . . . . . .
29
30
30
30
31
32
33
34
35
36
37
38
39
39
43
45
46
5.1
5.2
5.3
5.4
5.5
5.6
Top level menu of the satellite ATCOR. . . . .
The File Menu . . . . . . . . . . . . . . . . . .
Band selection dialog for ENVI file display . . .
Display of ENVI imagery . . . . . . . . . . . .
Simple text editor to edit plain text ASCII files
Plotting the explicit sensor response functions .
48
49
49
51
52
53
7
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
15
17
19
20
21
22
24
25
25
26
LIST OF FIGURES
5.7
5.8
5.9
5.10
5.11
5.12
5.13
5.14
5.15
5.16
5.17
5.18
5.19
5.20
5.21
5.22
5.23
5.24
5.25
5.26
5.27
5.28
5.29
5.30
5.31
5.32
5.33
5.34
5.35
5.36
5.37
5.38
5.39
5.40
5.41
5.42
5.43
5.44
5.45
5.46
5.47
5.48
5.49
5.50
5.51
5.52
5.53
Plotting a calibration file . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying a calibration file (same file as in Fig. 5.7) . . . . . . . . . . . . .
Panel to edit the ATCOR preferences . . . . . . . . . . . . . . . . . . . . .
The ’New Sensor’ Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sensor definition files: the three files on the left have to be provided/created
user. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Definition of a new sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Spectral Filter Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Black body function calculation panel . . . . . . . . . . . . . . . . . . . . .
Panels of RESLUT for resampling the atmospheric LUTs. . . . . . . . . . .
The ’Atm. Correction’ Menu . . . . . . . . . . . . . . . . . . . . . . . . . .
ATCOR panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Panel for DEM files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Panel to make a decision in case of a DEM with steps. . . . . . . . . . . . .
Influence of DEM artifacts on the solar illumination image. . . . . . . . . .
SPECTRA module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Radiometric calibration: target specification panel. . . . . . . . . . . . . . .
Radiometric CALIBRATION module. . . . . . . . . . . . . . . . . . . . . .
Normalized histogram of unscaled shadow function. . . . . . . . . . . . . . .
Panel to define the parameters for interactive de-shadowing. . . . . . . . . .
Quicklook of de-shadowing results. . . . . . . . . . . . . . . . . . . . . . . .
Image processing options. Right panel appears if a cirrus band exists. . . .
Emissivity selection panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Options for haze processing. . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reflectance ratio panel for dark reference pixels. . . . . . . . . . . . . . . .
BRDF panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Value added panel for a flat terrain. . . . . . . . . . . . . . . . . . . . . . .
Value added panel for a rugged terrain. . . . . . . . . . . . . . . . . . . . .
LAI / FPAR panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Job status window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ATCOR Tiled Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Topographic modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Slope/Aspect Calculation panel . . . . . . . . . . . . . . . . . . . . . . . . .
Panel of SKYVIEW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Example of a DEM (left) with the corresponding sky view image (right). . .
Panel of SHADOW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Panel of DEM smoothing . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Filter modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resampling of a (reflectance) spectrum. . . . . . . . . . . . . . . . . . . . .
Statistical spectral polishing. . . . . . . . . . . . . . . . . . . . . . . . . . .
Radiometric spectral polishing. . . . . . . . . . . . . . . . . . . . . . . . . .
Spectral smile interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . .
Simulation modules menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Apparent Reflectance Calculation . . . . . . . . . . . . . . . . . . . . . . . .
The tools menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Calculation of sun angles. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SPECL: spectral classification of reflectance cube. . . . . . . . . . . . . . .
Example of classification with SPECL. . . . . . . . . . . . . . . . . . . . . .
8
. . . .
. . . .
. . . .
. . . .
by the
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
.
.
54
54
55
56
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
56
58
59
60
60
61
62
63
63
64
65
67
68
69
70
71
72
72
73
73
74
75
75
76
76
77
78
79
80
81
81
81
82
82
83
84
86
87
88
89
89
90
90
LIST OF FIGURES
9
5.54
5.55
5.56
5.57
5.58
5.59
5.60
5.61
Nadir normalization. . . . . . . . . . . . . . . . . . . . . . . . . . . .
Topographic correction only, no atmospheric correction. . . . . . . .
Spectral smile detection . . . . . . . . . . . . . . . . . . . . . . . . .
SPECTRAL CAL.: spectral calibration . . . . . . . . . . . . . . . .
CAL REGRESS.: radiometric calibration with more than one target
Convert monochromanic database to new solar reference function . .
Convert atmlib to new solar reference function . . . . . . . . . . . .
The help menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1
7.2
Water vapor partial pressure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Air emissivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
8.1
8.2
8.3
8.4
Weight factors of hyperspectral bands. . . . . .
Sensor simulation in the solar region. . . . . . .
Graphical user interface of program ”HS2MS”.
TOA radiances for three albedos. . . . . . . . .
9.1
9.2
9.3
9.4
9.5
9.6
Monochromatic atmospheric database. . . . . . . . . . . . .
Solar irradiance database. . . . . . . . . . . . . . . . . . . .
User interface to convert database from one to another solar
GUI panels of the satellite version of program RESLUT. . .
SPOT orbit geometry. . . . . . . . . . . . . . . . . . . . . .
Solar and view geometry. . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
91
92
94
95
96
97
98
99
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
117
118
119
120
. . . . . . .
. . . . . . .
irradiance.
. . . . . . .
. . . . . . .
. . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
122
124
125
126
140
141
10.1 Radiation components, illumination and viewing geometry. . . . . . . . . . .
10.2 Schematic sketch of solar radiation components in flat terrain. . . . . . . . . .
10.3 Radiation components in rugged terrain, sky view factor. . . . . . . . . . . .
10.4 Solar illumination geometry and radiation components. . . . . . . . . . . . .
10.5 Radiation components in the thermal region. . . . . . . . . . . . . . . . . . .
10.6 Schematic sketch of visibility determination with reference pixel. . . . . . . .
10.7 Correlation of reflectance in different spectral regions. . . . . . . . . . . . . .
10.8 Rescaling of the path radiance with the blue and red band. . . . . . . . . . .
10.9 Optical thickness as a function of visibility and visibility index. . . . . . . . .
10.10Reference and measurement channels for the water vapor method. . . . . . .
10.11APDA ratio with an exponential fit function for the water vapor. . . . . . . .
10.12Nadir normalization of an image with hot-spot geometry. . . . . . . . . . . .
10.13Geometric functions for empirical BRDF correction. . . . . . . . . . . . . . .
10.14Haze removal method. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.15Subset of Ikonos image of Dresden, 18 August 2002. . . . . . . . . . . . . . .
10.16Haze removal over water, ALOS-AVNIR2 . . . . . . . . . . . . . . . . . . . .
10.17Scatterplot of apparent reflectance of cirrus (1.38 µm) band versus red band.
10.18Sketch of a cloud shadow geometry. . . . . . . . . . . . . . . . . . . . . . . . .
10.19Flow chart of processing steps during de-shadowing. . . . . . . . . . . . . . .
10.20Normalized histogram of unscaled shadow function. . . . . . . . . . . . . . . .
10.21Cloud shadow maps of a HyMap scene. . . . . . . . . . . . . . . . . . . . . .
10.22De-shadowing of a Landsat-7 ETM+ scene. . . . . . . . . . . . . . . . . . . .
10.23Weighting of q function for reference pixels. . . . . . . . . . . . . . . . . . . .
10.24Examples of template reflectance spectra employed by the SPECL code. . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
147
149
151
152
156
167
168
169
170
171
172
174
176
178
179
180
182
183
184
186
187
189
190
191
List of Tables
4.1
4.2
4.3
4.4
Example of a sensor definition file (no thermal bands). . .
Sensor definition file: instrument with thermal bands. . .
Sensor definition file: smile sensor without thermal bands.
Class label definition of ”hcw” file. . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
40
40
41
44
7.1
Heat fluxes for the vegetation and urban model. . . . . . . . . . . . . . . . . . . . . . 114
9.1
9.2
9.3
Elevation and tilt angles for Ikonos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Elevation and tilt angles for Quickbird. . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Radiometric coefficients c1 for ASTER. . . . . . . . . . . . . . . . . . . . . . . . . . 144
10.1 Class labels in the hcw file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
10.2 Visibility iterations on negative reflectance pixels (red, NIR bands). . . . . . . . . . 166
A.1
A.2
A.3
A.4
A.5
A.6
A.7
Altitude
Altitude
Altitude
Altitude
Altitude
Altitude
Altitude
profile
profile
profile
profile
profile
profile
profile
of
of
of
of
of
of
of
the
the
the
the
the
the
the
dry atmosphere. . . . . . . . . . .
midlatitude winter atmosphere. .
fall (autumn) atmosphere. . . . .
1976 US Standard. . . . . . . . .
subarctic summer atmosphere. . .
midlatitude summer atmosphere.
tropical atmosphere. . . . . . . .
10
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
199
200
200
200
201
201
201
Chapter 1
Introduction
The objective of any radiometric correction of airborne and spaceborne imagery of optical sensors is
the extraction of physical earth surface parameters such as spectral albedo, directional reflectance
quantities, emissivity, and temperature. To achieve this goal, the influence of the atmosphere,
solar illumination, sensor viewing geometry, and terrain information have to be taken into account.
Although a lot of information from airborne and satellite imagery can be extracted without radiometric correction, the physical model based approach as implemented in ATCOR offers advantages,
especially when dealing with multitemporal data and when a comparison of different sensors is required. In addition, the full potential of imaging spectrometers can only be exploited with this
approach.
Although physical models can be quite successful to eliminate atmospheric and topographic effects they inherently rely on an accurate spectral and radiometric sensor calibration and on the
accuracy and appropriate spatial resolution of a digital elevation model (DEM) in rugged terrain.
In addition, many surfaces have a bidirectional reflectance behavior, i.e., the reflectance depends
on the illumination and viewing geometry. The usual assumption of an isotropic or Lambertian
reflectance law is appropriate for small field-of-view (FOV < 30o , scan angle < ±15o ) sensors if
viewing does not take place in the solar principal plane. However, for large FOV sensors and / or
data recording close to the principal plane the anisotropic reflectance behavior of natural surfaces
causes brightness gradients in the image. These effects can be removed with an empirical method
that normalizes the data to nadir reflectance values. In addition, for rugged terrain areas illuminated under low local solar elevation angles, these effects also play a role and can be taken care of
with an empirical method included in the ATCOR package.
The ATCOR software was developed to cover about 80% of the typical cases with a reasonable
amount of coding. It is difficult if not impossible to achieve satisfactory results for all possible
cases. Special features of ATCOR are the consideration of topographic effects and the capability
to process thermal band imagery.
There are two ATCOR models available, one for satellite imagery, the other one for airborne imagery
([68], [69]). The satellite version of ATCOR supports all major commercially available small-tomedium FOV sensors with a sensor-specific atmospheric database of look-up tables (LUTs) containing the results of pre-calculated radiative transfer calculations. New sensors will be added on
demand. The current list of supported sensors is available at this web address. A simple interface
has been added to provide the possibility to include user-defined instruments. It is mainly intended
for hyperspectral sensors where the center wavelength of channels is not stable and a re-calculation
11
CHAPTER 1. INTRODUCTION
12
of atmospheric LUTs is required, e.g., Hyperion, Chris-Proba.
An integral part of all ATCOR versions is a large database containing the results of radiative
R code (Berk et al. 1998, 2008). While ATCOR uses
transfer calculations based on the Modtran5
the AFRL MODTRAN code to calculate the database of atmospheric look-up tables (LUT), the
correctness of the LUT’s is the responsibility of ATCOR.
Historical note:
For historic reasons, the satellite codes are called ATCOR-2 (flat terrain, two geometric degreesof-freedom DOF [56]) and ATCOR-3 (three DOF’s, mountainous terrain [59]). They support all
commercially available small to medium FOV satellite sensors with a sensor-specific atmospheric
database. The scan angle dependence of the atmospheric correction functions within a scene is
neglected here.
The airborne version is called ATCOR-4, to indicate the four geometric DOF’s x, y, z, and scan
angle [62]. It includes the scan angle dependence of the atmospheric correction functions, a necessary feature, because most airborne sensors have a large FOV up to 60◦ - 90◦ . While satellite
sensors always operate outside the atmosphere, airborne instruments can operate in altitudes of a
few hundred meters up to 20 km. So the atmospheric database has to cover a range of altitudes.
Since there is no standard set of airborne instruments and the spectral / radiometric performance
might change from year to year due to sensor hardware modifications, a monochromatic atmoR
spheric database was compiled based on the Modtran5
radiative transfer code. This database
has to be resampled for each user-defined sensor.
Organization of the manual:
Chapters 2 and 3 contain a short description of the basic concepts of atmospheric correction which
will be useful for newcomers. Chapter 2 discusses the solar spectral region, while chapter 3 treats
the thermal region. Chapter 4 presents the workflow in ATCOR, and chapter 5 contains a detailed
description of the graphical user interface panels of the major modules. Chapter 6 describes the
batch processing capabilities with ATCOR. It is followed by chapters on value added products
available with ATCOR, sensor simulation, miscellaneous topics, and a comprehensive chapter on
the theoretical background of atmospheric correction. In the appendix, the altitude profile of the
standard atmospheres and a short intercomparison of the various solar reference functions is given.
Information on the IDL version of ATCOR can be found on the internet: http://www.rese.ch.
What is new in the 2012 version:
• In mountainous terrain the height resolution of the radiative transfer functions is improved
from 100 m to 20 m.
• The skyview calculation now supports a user-defined angular increment for azimuth/elevation
and a pixel undersampling factor. The default azimuth/elevation increment is 30◦ / 10◦ to
be compatible with the previous version. The new recommendated values are 10◦ and
5◦ for azimuth and elevation, respectively. For a large scene an undersampling factor of 3 is
recommended to avoid an excessive calculation time.
CHAPTER 1. INTRODUCTION
13
• The water vapor retrieval can be performed with channels in the 820 nm atmospheric absorption region. This is a useful enhancement for VIS/NIR spectrometers covering the spectrum
from 400 - 900 nm. The previous version only supported a retrieval if channels exist in the
940 nm or 1130 nm region.
• Water vapor retrieval with band regression: the previous version supported the calculation
of the water vapor map for ground elevations up to 2.5 km, now extrapolation is provided up
to elevations of 3.5 km.
• An external water vapor map is accepted for instruments that have the capability i.e., necessary spectral bands) to derive the water vapor map. If ’scene1.bsq’ is the name of the input
scene and the name of the external water vapor map is ’scene1 wv.bsq’ (in the same folder
as the input scene) then it is automatically used and the internal calculation is bypassed.
• The correction of dark areas caused by topographic shadow has been improved.
• A positive spectral reflectance correlation factor b defines the relationship ρ(blue) = b ρ(red)
for the dark reference pixels. If b > 0 then the surface reflectance of the reference pixels (dense
dark vegetation: DDV) in the blue band is used to modify the aerosol type (if necessary) to
fulfill this equation. This option is retained in the 2012 version, but a new option with b < 0 is
added. In this case, the program still calculates the visibility/AOT (aerosol optical thickness)
map based on dark reference pixels, but retains the selected aerosol type.
• The tiling capability for large scenes is improved: while the previous version did not allow the
first tile to consist only of background pixels, the new version handles any spatial distribution
of background pixels in a large scene. It calculates the visibility map for the tile with the
lowest percentage of background pixels, and processes the remaining tiles with the same
average visibility to avoid potential brightness steps at tile borders.
• The IRC (Integrated Radiometric Correction) method [40, 41] of combined atmospheric /
topographic correction in rugged terrain is included as one additional option, see chapter
10.1.2.
Chapter 2
Basic Concepts in the Solar Region
Standard books on optical remote sensing contain an extensive presentation on sensors, spectral
signatures, and atmospheric effects where the interested reader is referred to (Slater 1980 [80],
Asrar 1989 [2], Schowengert 1997 [78]).
This chapter describes the basic concept of atmospheric correction. Only a few simple equations
(2.1-2.21) are required to understand the key issues. We start with the radiation components and
the relationship between the at-sensor radiance and the digital number or grey level of a pixel. Then
we are already able to draw some important conclusions about the radiometric calibration. We
continue with some remarks on how to select atmospheric parameters. Next is a short discussion
about the thermal spectral region. The remaining sections present the topics of BRDF correction,
spectral / radiometric calibration, and de-shadowing. For a discussion of the haze removal method
the reader is referred to chapter 10.5.2.
Two often used parameters for the description of the atmosphere are ’visibility’ and ’optical thickness’.
Visibility and optical thickness
The visibility (horizontal meteorological range) is approximately the maximum horizontal distance
a human eye can recognize a dark object against a bright sky. The exact definition is given by the
Koschmieder equation:
V IS =
1
1
3.912
ln
=
β
0.02
β
(2.1)
where β is the extinction coefficient (unit km−1 ) at 550 nm. The term 0.02 in this equation is an
arbitrarily defined contrast threshold. Another often used concept is the optical thickness of the
atmosphere (δ) which is the product of the extinction coefficient and the path length x (e.g., from
sea level to space in a vertical path) :
δ=β x
(2.2)
The optical thickness is a pure number. In most cases, it is evaluated for the wavelength 550 nm.
Generally, there is no unique relationship between the (horizontal) visibility and the (vertical) total
R radiative transfer code a
optical thickness of the atmosphere. However, with the MODTRAN
certain relationship has been defined between these two quantities for clear sky conditions as shown
in Fig. 2.1 (left) for a path from sea level to space. The optical thickness can be defined separately
for the different atmospheric constituents (molecules, aerosols), so there is an optical thickness due
14
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
15
to molecular (Rayleigh) and aerosol scattering, and due to molecular absorption (e.g., water water,
ozone etc.). The total optical thickness is the sum of the thicknesses of all individual contributors :
δ = δ(molecular scattering) + δ(aerosol) + δ(molecular absorption)
(2.3)
R visibility parameter scales the aerosol content in the boundary layer (0 - 2 km
The MODTRAN
altitude). For visibilities greater than 100 km the total optical thickness asymptotically approaches
a value of about 0.17 which (at 550 nm) is the sum of the molecular thickness (δ = 0.0973) plus ozone
thickness (δ = 0.03) plus a very small amount due to trace gases, plus the contribution of residual
aerosols in the higher atmosphere (2 - 100 km) with δ = 0.04. The minimum optical thickness
or maximum visibility is reached if the air does not contain aerosol particles (so called ”Rayleigh
limit”) which corresponds to a visibility of 336 km at sea level and no aerosols in the boundary
layer and higher atmosphere. In this case the total optical thickness (molecular and ozone) is
about δ = 0.13. Since the optical thickness due to molecular scattering (nitrogen and oxygen)
only depends on pressure level it can be calculated accurately for a known ground elevation. The
ozone contribution to the optical thickness usually is small at 550 nm and a climatologic/geographic
average can be taken. This leaves the aerosol contribution as the most important component which
varies strongly in space and time. Therefore, the aerosol optical thickness (AOT) at 550 nm is
often used to characterize the atmosphere instead of the visibility.
Figure 2.1: Visibility, AOT, and total optical thickness, atmospheric transmittance.
The atmospheric (direct or beam) transmittance for a vertical path through the atmosphere can
be calculated as :
τ = e−δ
(2.4)
Fig. 2.1 (right) shows an example of the atmospheric transmittance from 0.4 to 2.5 µm. The
spectral regions with relatively high transmittance are called ”atmospheric window” regions. In
absorbing regions the name of the molecule responsible for the attenuation of radiation is included.
Apparent reflectance
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
16
The apparent reflectance describes the combined earth/atmosphere behavior with respect to the
reflected solar radiation:
ρ(apparent) =
π d2 L
E cosθs
(2.5)
where d is the earth-sun distance in astronomical units, L = c0 + c1 DN is the at-sensor radiance,
c0 , c1 , DN , are the radiometric calibration offset, gain, and digital number, respectively. E and θs
are the extraterrestrial solar irradiance and solar zenith angle, respectively. For imagery of satellite
sensors the apparent reflectance is also named top-of-atmosphere (TOA) reflectance.
2.1
Radiation components
We start with a discussion of the radiation components in the solar region, i.e., the wavelength
spectrum from 0.35 - 2.5 µm. Figure 2.2 shows a schematic sketch of the total radiation signal at
the sensor. It consists of three components:
1. path radiance (L1 ), i.e., photons scattered into the sensor’s instantaneous field-of-view, without having ground contact.
2. reflected radiation (L2 ) from a certain pixel: the direct and diffuse solar radiation incident
on the pixel is reflected from the surface. A certain fraction is transmitted to the sensor. The
sum of direct and diffuse flux on the ground is called global flux.
3. reflected radiation from the neighborhood (L3 ), scattered by the air volume into the current
instantaneous direction, the adjacency radiance. As detailed in [65] the adjacency radiation
L3 consists of two components (atmospheric backscattering and volume scattering) which are
combined into one component in Fig. 2.2 to obtain a compact description.
Only radiation component 2 contains information from the currently viewed pixel. The task of
atmospheric correction is the calculation and removal of components 1 and 3, and the retrieval of
the ground reflectance from component 2.
So the total radiance signal L can be written as :
L = Lpath + Lref lected + Ladj (= L1 + L2 + L3 )
(2.6)
The path radiance decreases with wavelength. It is usually very small for wavelengths greater than
800 nm. The adjacency radiation depends on the reflectance or brightness difference between the
currently considered pixel and the large-scale (0.5-1 km) neighborhood. The influence of the adjacency effect also decreases with wavelength and is very small for spectral bands beyond 1.5 µm [65].
For each spectral band of a sensor a linear equation describes the relationship between the recorded
brightness or digital number DN and the at-sensor radiance (Fig. 2.2) :
L = c0 + c1 ∗ DN
(2.7)
The c0 and c1 are called radiometric calibration coefficients. The radiance unit in ATCOR is
mW cm−2 sr−1 µm−1 . For instruments with an adjustable gain setting g the corresponding equation
is :
c1
L = c0 +
∗ DN
(2.8)
g
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
17
Figure 2.2: Schematic sketch of solar radiation components in flat terrain.
L1 : path radiance, L2 : reflected radiance, L3 : adjacency radiation.
During the following discussion we will always use eq. (2.7). Disregarding the adjacency component
we can simplify eq. (2.6)
L = Lpath + Lref lected = Lpath + τ ρEg /π = c0 + c1 DN
(2.9)
where τ , ρ, and Eg are the ground-to-sensor atmospheric transmittance, surface reflectance, and
global flux on the ground, respectively. Solving for the surface reflectance we obtain :
ρ=
π{d2 (c0 + c1 DN ) − Lpath }
τ Eg
(2.10)
The factor d2 takes into account the sun-to-earth distance (d is in astronomical units), because the
LUT’s for path radiance and global flux are calculated for d=1 in ATCOR. Equation (2.9) is a key
formula to atmospheric correction. A number of important conclusions can now be drawn:
• An accurate radiometric calibration is required, i.e., a knowledge of c0 , c1 in each spectral
band.
• An accurate estimate of the main atmospheric parameters (aerosol type, visibility or optical
thickness, and water vapor) is necessary, because these influence the values of path radiance,
transmittance, and global flux.
• If the visibility is assumed too low (optical thickness too high) the path radiance becomes
high, and this may cause a physically unreasonable negative surface reflectance. Therefore,
dark surfaces of low reflectance, and correspondingly low radiance c0 + c1 DN , are especially
sensitive in this respect. They can be used to estimate the visibility or at least a lower
bound. If the reflectance of dark areas is known the visibility can actually be calculated. The
interested reader may move to chapter 10.4.2, but this is not necessary to understand the
remaining part of the chapter.
• If the main atmospheric parameters (aerosol type or scattering behavior, visibility or optical
thickness, and water vapor column) and the reflectance of two reference surfaces are measured,
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
18
the quantities Lpath , τ , ρ, and Eg are known. So, an ”inflight calibration” can be performed
to determine or update the knowledge of the two unknown calibration coefficients c0 (k), c1 (k)
for each spectral band k, see section 2.4.
Selection of atmospheric parameters
The optical properties of some air constituents are accurately known, e.g., the molecular or Rayleigh
scattering caused by nitrogen and oxygen molecules. Since the mixing ratio of nitrogen and oxygen
is constant the contribution can be calculated as soon as the pressure level (or ground elevation)
is specified. Other constituents vary slowly in time, e.g., the CO2 concentration. ATCOR calculations were performed for a concentration of 380 ppmv. Ozone may also vary in space and time.
Since ozone usually has only a small influence ATCOR employs a fixed value of 330 DU (Dobson
units, corresponding to the former unit 0.33 atm-cm, for a ground at sea level) representing average
conditions. The three most important atmospheric parameters that vary in space and time are the
aerosol type, the visibility or optical thickness, and the water vapor. We will mainly work with the
term visibility (or meteorological range), because the radiative transfer calculations were performed
R code (Berk et al., 1998, 2008), and visibility is an intuitive input parameter
with the Modtran5
R although the aerosol optical thickness can be used as well. ATCOR employs a
in MODTRAN,
R
database of LUTs calculated with Modtran5.
Aerosol type
The aerosol type includes the absorption and scattering properties of the particles, and the wavelength dependence of the optical properties. ATCOR supports four basic aerosol types: rural,
urban, maritime, and desert. The aerosol type can be calculated from the image data provided
that the scene contains vegetated areas. Alternatively, the user can make a decision, usually based
on the geographic location. As an example, in areas close to the sea the maritime aerosol would be
a logical choice if the wind was coming from the sea. If the wind direction was toward the sea and
the air mass is of continental origin the rural, urban, or desert aerosol would make sense, depending
on the geographical location. If in doubt, the rural (continental) aerosol is generally a good choice.
The aerosol type also determines the wavelength behavior of the path radiance. Of course, nature
can produce any transitions or mixtures of these basic four types. However, ATCOR is able to
adapt the wavelength course of the path radiance to the current situation provided spectral bands
exist in the blue-to-red- region and the scene contains reference areas of known reflectance behavior.
The interested reader may read chapter 10.4.2 for details.
Visibility estimation
Two options are available in ATCOR:
• An interactive estimation in the SPECTRA module (compare chapter 5). The spectra of
different targets in the scene can be displayed as a function of visibility. A comparison
with reference spectra from libraries determines the visibility. In addition, dark targets like
vegetation in the blue-to-red spectrum or water in the red-to-NIR can be used to estimate
the visibility.
• An automatic calculation of the visibility can be performed if the scene contains dark reference
pixels. The interested reader is referred to chapter 10.4.2 for details.
Water vapor column
The water vapor content can be automatically computed if the sensor has spectral bands in water
vapor regions (e.g., 920-960 nm). The approach is based on the differential absorption method
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
19
and employs bands in absorption regions and window regions to measure the absorption depth,
see chapter 10.4.3. Otherwise, if a sensor does not possess spectral bands in water vapor regions,
e.g. Landsat TM or SPOT, an estimate of the water vapor column based on the season (summer
/ winter) is usually sufficient. Typical ranges of water vapor columns are (sea-level-to space):
tropical conditions:
midlatitude summer:
dry summer, spring, fall:
dry desert or winter:
2.2
wv=3-5 cm (or g cm−2 )
wv= 2-3 cm
wv=1-1.5 cm
wv=0.3-0.8 cm
BRDF correction
The reflectance of many surface covers depends on the viewing and solar illumination geometry.
This behavior is described by the bidirectional reflectance distribution function (BRDF). It can
clearly be observed in scenes where the view and / or sun angles vary over a large angular range.
Since most sensors of the satellite version of ATCOR have a small field-of-view, these effects will
only play a role in rugged terrain and for the wide FOV sensors such as IRS-1D WiFS or MERIS.
For flat terrain scenes across-track brightness gradients that appear after atmospheric correction
are caused by BRDF effects, because the sensor’s view angle varies over a large range. In extreme
cases when scanning in the solar principal plane, the brightness is particularly high in the hot spot
angular region where retroreflection occurs, see Figure 2.3, left image, left part. The opposite scan
angles (with respect to the central nadir region) show lower brightness values. A simple method,
called nadir normalization or across-track illumination correction, calculates the brightness as a
function of scan angle, and multiplies each pixel with the reciprocal function.
Figure 2.3: Nadir normalization of an image with hot-spot geometry.
Left: reflectance image without BRDF correction. Right: after empirical BRDF correction.
The BRDF effect can be especially strong in rugged terrain with slopes facing the sun and others
oriented away from the sun. In areas with steep slopes the local solar zenith angle β may vary
from 0◦ to 90◦ , representing geometries with maximum solar irradiance to zero direct irradiance,
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
20
i.e., shadow. The angle β is the angle between the surface normal of a DEM pixel and the solar
zenith angle of the scene. In mountainous terrain there is no simple method to eliminate BRDF
effects. The usual assumption of an isotropic (Lambertian) reflectance behavior often causes an
overcorrection of faintly illuminated areas where local solar zenith angles β range from 60◦ - 90◦ .
These areas appear very bright, see Figure 2.4, left part.
Figure 2.4: BRDF correction in rugged terrain imagery.
Left: image without BRDF correction. Center: after BRDF correction with threshold angle βT =
65◦ . Right: illumination map = cosβ.
To avoid a misclassification of these bright areas the reflectance values have to be reduced (Fig. 2.4,
center part). In ATCOR empirical geometry-dependent functions are used for this purpose. For
details the interested reader is referred to chapter 10.5.1, but the main idea is also discussed here.
In the simplest cases, the empirical BRDF correction employs only the local solar zenith angle βi
and a threshold βT to reduce the overcorrected surface reflectance ρL with a factor G, compare
Figure 2.5.
ρcorrected = ρL G
(2.11)
where
G = {cosβi /cosβT }b
≥g
(2.12)
The exponent b is in the range 1/3 to 1, see chapter 10.5.1 for details. So the reflectance is only
decreased for local solar zenith angles βi > βT until the minimum value G = g is reached. The
parameters βT and g may be scene-dependent and can be set by the user. In many cases the default
g=0.25 works fine and only the threshold angle βT has to be adapted.
Choice of βT
The threshold illumination angle βT should have some margin to the solar zenith angle to retain
the original natural variation of pixels with illumination angles close to the solar zenith angle. The
threshold angle can be specified by the user and the following empirical rules are recommended:
• βT = θs + 20◦ if θs < 45◦
• If 45 ≤ θs ≤ 20◦ then βT = θs + 15◦
• If θs > 55◦ then βT = θs + 10◦
These rules are automatically applied if βT = 0, e.g., during batch processing.
The angle βT can actually be calculated from the imagery as demonstrated by the following example. When processing the scene with ATCOR the map of local solar zenith angles is stored in
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
21
Figure 2.5: Geometric function G for three thresholds of βT .
The reflectance is not modified for βi ≤ βT , (βT = 45◦ , 55◦ , 65◦ ), and reduced for βi > βT until
the minimum value g=0.2 is reached.
a separate file ”*ilu”. If the output file after atmospheric / topographic correction contains bright
overcorrected areas this file should be linked to the ”*ilu” file using any available standard image
processing software. The ”*ilu” file contains the illumination map βi scaled as byte data:
ilu = 100 ∗ cosβi
βi = arccos(ilu/100)
(2.13)
(2.14)
Let us assume an example:
A pixel in a dark area of the ”*ilu” image has the value ilu=32, i.e., βi = 71◦ . The overcorrected
reflectance value be ρL = 80% and this value shall be reduced to 40%, a value typical for the flatterrain neighborhood. Then the threshold angle has to be specified such that cosβi /cosβT = 0.5
(with exponent b=1 in equation (2.12), in this case βT = 50◦ . So, if the desired reflectance reduction
factor is G then the required threshold angle can be calculated from eq. (2.12 with b=1):
cosβ
ilu
) = arccos
(2.15)
G
100G
In many cases a separate treatment of BRDF effects for soil/rock and vegetation provides better
results. For this purpose, two modes of BRDF correction are available for vegetation, compare the
graphical user interface of Figure 5.31. The first mode is superior in most cases.
βT = arccos(
Reference [67] contains a comparison of different topographic correction methods for several LandsatTM, ETM+, and SPOT-5 scenes from different areas. The proposed empirical ATCOR approach
performed best in most of these cases, but no method ranked first in all cases.
2.3
Spectral calibration
This section can be skipped if data processing is only performed for imagery of broad-band sensors.
Sensor calibration problems may pertain to spectral properties, i.e., the channel center positions
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
22
and / or bandwidths might have changed compared to laboratory measurements, or the radiometric
properties, i.e., the offset (co ) and slope (c1 ) coefficients, relating the digital number (DN) to the
at-sensor radiance L = c0 + c1 ∗ DN . Any spectral mis-calibration can usually only be detected
from narrow-band hyperspectral imagery as discussed in this section. For multispectral imagery,
spectral calibration problems are difficult or impossible to detect, and an update is generally only
performed with respect to the radiometric calibration coefficients, see chapter 2.4.
Surface reflectance spectra retrieved from narrow-band hyperspectral imagery often contain spikes
and dips in spectral absorption regions of atmospheric gases (e.g., oxygen absorption around 760
nm, water vapor absorption around 940 nm). These effects are most likely caused by a spectral
mis-calibration. In this case, an appropiate shift of the center wavelengths of the channels will
remove the spikes. This is performed by an optimization procedure that minimizes the deviation
between the surface reflectance spectrum and the corresponding smoothed spectrum. The merit
function to be minimized is
χ2 (δ) =
n
X
{ρsurf
(δ) − ρsmooth
}2
i
i
(2.16)
i=1
(δ) is the surface reflectance in channel i calculated for a spectral shift δ, ρsmooth
is the
where ρsurf
i
i
smoothed (low pass filtered) reflectance, and n is the number of bands in each spectrometer of a
hyperspectral instrument. So the spectral shift is calculated independently for each spectrometer.
In the currently implemented version, the channel bandwidth is not changed and the laboratory
values are assumed valid. More details of the method are described in [26]. A spectral re-calibration
should precede any re-calibration of the radiometric calibration coefficients; see section 5.7.8 for
details about this routine.
Figure 2.6: Wavelength shifts for an AVIRIS scene.
Figure 2.6 shows a comparison of the results of the spectral re-calibration for a soil and a vegetation
target retrieved from an AVIRIS scene (16 Sept. 2000, Los Angeles area). The flight altitude was
20 km above sea level (asl), heading west, ground elevation 0.1 km asl, the solar zenith and azimuth
angles were 41.2◦ and 135.8◦ . Only part of the spectrum is shown for a better visual comparison
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
23
of the results based on the original spectral calibration (thin line) and the new calibration (thick
line). The spectral shift values calculated for the 4 individual spectrometers of AVIRIS are 0.1,
-1.11, -0.88, and -0.21 nm, respectively.
2.4
Inflight radiometric calibration
Inflight radiometric calibration experiments are performed to check the validity of the laboratory
calibration. For spaceborne instruments processes like aging of optical components or outgassing
during the initial few weeks or months after launch often necessitate an updated calibration. This
approach is also employed for airborne sensors because the aircraft environment is different from
the laboratory and this may have an impact on the sensor performance. The following presentation only discusses the radiometric calibration and assumes that the spectral calibration does not
change, i.e., the center wavelength and spectral response curve of each channel are valid as obtained
in the laboratory, or it was already updated as discussed in chapter 2.3. Please refer to section
5.3.9 for further detail about how to perform an inflight calibration.
The radiometric calibration uses measured atmospheric parameters (visibility or optical thickness
from sun photometer, water vapor content from sun photometer or radiosonde) and ground reflectance measurements to calculate the calibration coefficients c0 , c1 of equation (2.7) for each
band. For details, the interested reader is referred to the literature (Slater et al., 1987 [82], Santer
et al. 1992, Richter 1997). Depending of the number of ground targets we distinguish three cases:
a single target, two targets, and more than two targets.
Calibration with a single target
In the simplest case, when the offset is zero (c0 = 0), a single target is sufficient to determine the
calibration coefficient c1 :
L1 = c1 DN1∗ = Lpath + τ ρ1 Eg /π
(2.17)
Lpath , τ , and Eg are taken from the appropriate LUT’s of the atmospheric database, ρ1 is the
measured ground reflectance of target 1, and the channel or band index is omitted for brevity.
DN1∗ is the digital number of the target, averaged over the target area and already corrected for
the adjacency effect. Solving for c1 yields:
c1 =
Lpath + τ ρ1 Eg /π
L1
=
∗
DN1
DN1∗
(2.18)
Remark: a bright target should be used here, because for a dark target any error in the ground
reflectance data will have a large impact on the accuracy of c1 .
Calibration with two targets
In case of two targets a bright and a dark one should be selected to get a reliable calibration. Using
the indices 1 and 2 for the two targets we have to solve the equations:
L1 = c0 + c1 ∗ DN1∗
L2 = c0 + c1 ∗ DN2∗
(2.19)
This can be performed with the c0 &c1 option of ATCOR’s calibration module, see chapter 5. The
result is:
L1 − L2
c1 =
(2.20)
DN1∗ − DN2∗
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
24
Figure 2.7: Radiometric calibration with multiple targets using linear regression.
c0 = L1 − c1 ∗ DN1∗
(2.21)
Equation (2.20) shows that DN1∗ must be different from DN2∗ to get a valid solution, i.e., the two
targets must have different surface reflectances in each band. If the denominator of eq. (2.20) is
zero ATCOR will put in a 1 and continue. In that case the calibration is not valid for this band.
The requirement of a dark and a bright target in all channels cannot always be met.
Calibration with n > 2 targets
In cases where n > 2 targets are available the calibration coefficients can be calculated with a least
squares fit applied to a linear regression equation, see figure 2.7. This is done by the ”cal regress”
program of ATCOR. It employs the ”*.rdn” files obtained during the single-target calibration (the
”c1 option” of ATCOR’s calibration module. See section 5.7.9 for details about how to use this
routine.
Note: If several calibration targets are employed, care should be taken to select targets without
spectral intersections, since calibration values at intersection bands are not reliable. If intersections
of spectra cannot be avoided, a larger number of spectra should be used, if possible, to increase the
reliability of the calibration.
2.5
De-shadowing
Remotely sensed optical imagery of the Earth’s surface is often contaminated with cloud and cloud
shadow areas. Surface information under cloud covered regions cannot be retrieved with optical
sensors, because the signal contains no radiation component being reflected from the ground. In
shadow areas, however, the ground-reflected solar radiance is always a small non-zero signal, because the total radiation signal at the sensor contains a direct (beam) and a diffuse (reflected
skylight) component. Even if the direct solar beam is completely blocked in shadow regions, the
reflected diffuse flux will remain, see Fig. 2.8. Therefore, an estimate of the fraction of direct solar
irradiance for a fully or partially shadowed pixel can be the basis of a compensation process called
de-shadowing or shadow removal. The method can be applied to shadow areas cast by clouds or
buildings.
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
25
Figure 2.8: Sketch of a cloud shadow geometry.
Figure 2.9 shows an example of removing building shadows. The scene covers part of the central
area of Munich. It was recorded by the Ikonos-2 sensor (17 Sept. 2003). The solar zenith and
azimuth angles are 46.3◦ and 167.3◦ , respectively. After shadow removal the scene displays a much
lower contrast, of course, but many details can be seen that are hidden in the uncorrected scene,
see the zoom images of figure 2.10. The central zoom image represents the shadow map, scaled
between 0 and 1000. The darker the area the lower the fractional direct solar illumination, i.e.
the higher the amount of shadow. Some artifacts can also be observed in Figure 2.9, e.g., the
Isar river at the bottom right escaped the water mask, entered the shadow mask, and is therefore
overcorrected.
Figure 2.9: De-shadowing of an Ikonos image of Munich.
c
European
Space Imaging GmbH 2003. Color coding: RGB = bands 4/3/2 (800/660/550 nm).
Left: original, right: de-shadowed image.
The proposed de-shadowing technique works for multispectral and hyperspectral imagery over land
CHAPTER 2. BASIC CONCEPTS IN THE SOLAR REGION
26
Figure 2.10: Zoomed view of central part of Figure 2.9.
Courtesy of European Space Imaging, Color coding: RGB = bands 4/3/2.
Left: original, center: shadow map, right: de-shadowed image.
acquired by satellite / airborne sensors. The method requires a channel in the visible and at least
one spectral band in the near-infrared (0.8-1 µm) region, but performs much better if bands in the
short-wave infrared region (around 1.6 and 2.2 µm) are available as well. A fully automatic shadow
removal algorithm has been implemented. However, the method involves some scene-dependent
thresholds that might be optimized during an interactive session. In addition, if shadow areas are
concentrated in a certain part of the scene, say in the lower right quarter, the performance of the
algorithm improves by working on the subset only.
The de-shadowing method employs masks for cloud and water. These areas are identified with
spectral criteria and thresholds. Default values are included in a file in the ATCOR path, called
”preferences/preference parameters.dat”. As an example, it includes a threshold for the reflectance
of water in the NIR region, ρ=5% . So, a reduction of this threshold will reduce the number of
pixels in the water mask. A difficult problem is the distinction of water and shadow areas. If water
bodies are erroneously included in the shadow mask, the resulting surface reflectance values will be
too high.
Details about the processing panels can be found in section 5.3.10.
Chapter 3
Basic Concepts in the Thermal
Region
Fig. 3.1 (left) presents an overview of the atmospheric transmittance in the 2.5 - 14 µm region. The
main absorbers are water vapor and CO2 which totally absorb in some parts of the spectrum. In the
thermal region (8 - 14 µm) the atmospheric transmittance is mainly influenced by the water vapor
column, ozone (around 9.6 µm) and CO2 (at 14 µm). Fig. 3.1 (right) shows the transmittance
for three levels of water vapor columns w=0.4, 1.0, 2.9 cm, representing dry, medium, and humid
conditions. The aerosol influence still exists, but is strongly reduced compared to the solar spectral
region because of the much longer wavelength. So an accurate estimate of the water vapor column
is required in this part of the spectrum to be able to retrieve the surface properties, i.e., spectral
emissivity and surface temperature.
Figure 3.1: Atmospheric transmittance in the thermal region.
Similar to the solar region, there are three radiation components: thermal path radiance (L1 ), i.e.,
photons emitted by the atmospheric layers, emitted surface radiance (L2 ), and reflected radiance
(L3 ).
In the thermal spectral region from 8 - 14 µm the radiance signal can be written as
L = Lpath + τ LBB (T ) + τ (1 − )F/π
(3.1)
27
CHAPTER 3. BASIC CONCEPTS IN THE THERMAL REGION
28
Figure 3.2: Radiation components in the thermal region.
L1 = LP , L2 = τ LBB (T ), L3 = τ (1 − ) F/π .
where Lpath is the thermal path radiance, i.e., emitted and scattered radiance of different layers of
the air volume between ground and sensor, τ is the atmospheric ground-to-sensor transmittance,
is the surface emissivity ranging between 0 and 1, LBB (T ) is Planck’s blackbody radiance of a
surface at temperature T , and F is the thermal downwelling flux of the atmosphere, see Fig. 3.2.
So the total signal consists of path radiance, emitted surface radiance, and reflected atmospheric
radiation. The adjacency radiation, i.e., scattered radiation from the neighborhood of a pixel, can
be neglected because the scattering efficiency decreases strongly with wavelength.
For most natural surfaces the emissivity in the 8-12 µm spectral region ranges between 0.95 and
0.99. Therefore, the reflected downwelling atmospheric flux contributes only a small fraction to the
signal. Neglecting this component for the simplified discussion of this chapter we can write
LBB (T ) =
L − Lpath
c0 + c1 DN − Lpath
=
τ
τ
(3.2)
In the thermal region the aerosol type plays a negligible role because of the long wavelength, and
atmospheric water vapor is the dominating parameter. So the water vapor, and to a smaller degree the visibility, determine the values of Lpath and τ . In case of coregistered bands in the solar
and thermal spectrum the water vapor and visibility calculation may be performed with the solar
channels. In addition, if the surface emissivity is known, the temperature T can be computed from
eq. (3.2) using Planck’s law.
For simplicity a constant emissivity = 1.0 or = 0.98 is often used and the corresponding
temperature is called brightness temperature. The kinetic surface temperature differs from the
brightness temperature if the surface emissivity does not match the assumed emissivity. With the
assumption = 1.0 the kinetic temperature is always higher than the brightness temperature. As
a rule of thumb an emissivity error of 0.01 (one per cent) yields a surface temperature error of 0.5K.
For rugged terrain imagery no slope/aspect correction is performed for thermal bands, only the
elevation-dependence of the atmospheric parameters is taken into account.
Chapter 4
Workflow
This chapter familiarizes the user with ATCOR 2/3’s workflow and with the program’s basic
functionality using the graphical user interface. A detailed description of all modules and user
interface panels is given in the subsequent chapter 5.
ATCOR may also be used in batch mode for most of its functions. A description of the batch mode
can be found in chapter 6.
4.1
Menus Overview
To start ATCOR, double click the file ’atcor.sav’. It will be opened through IDL or the IDL virtual
machine and the graphical user interface of Fig. 4.1 will pop up. Alternatively, type atcor on the
IDL command line after having added the atcor -directory to the IDL search path. A large number
of processing modules is available from this level as described in chapter 5. Most of them can
be used without reading a detailed manual description because they contain explanations in the
panels themselves. However, the next section guides the ATCOR newcomer during the atmospheric
correction of a sample scene. The functions in the ”File” menu allow the display of an image file,
the on-screen display of calibration files, sensor response curves etc, see Fig. 4.2. More details
about this menu are given in chapter 5.1.
Figure 4.1: Top level graphical interface of ATCOR.
The ”New Sensor” menu of Fig. 4.1 is available if the module for hyperspectral (or user-defined)
sensors is licensed. It contains routines to create spectral filter curves (rectangular, Gaussian, etc)
from a 3-column ASCII file (band number, center wavelength, bandwidth, one line per channel)
provided by the user, calculates atmospheric look-up tables (LUTs) for new sensors, and computes
the radiance/temperature functions for thermal bands; see Fig. 4.3 and chapter 5.2.
The menu ”Atm. Correction” gives access to the ATCOR core processes for atmospheric correction
in flat and rugged terrain. For both, multispectral and hyperspectral instruments. It also gives
access to the tiled processing. It is further described in section 4.2 below and chapter 5.3.
29
CHAPTER 4. WORKFLOW
30
Figure 4.2: Top level graphical interface of ATCOR: ”File”.
Figure 4.3: Top level graphical interface of ATCOR: ”New Sensor”.
The ”Topographic” menu contains programs for the calculation of slope/aspect images from a digital elevation model, the skyview factor, and topographic shadow. Furthermore, it supports the
smoothing of DEMs and its related layers, see chapter 5.4.
Figure 4.4: Topographic modules.
The ”Filter” menu provides spectral filtering of single spectra (reflectance, emissivity, radiance)
provided as ASCII files, spectral filtering of image cubes, and spectral polishing; see chapter 5.5.
The ”Simulation” menu provides programs for the simulation of at-sensor radiance scenes based
on surface reflectance (or emissivity and temperature) images; see chapter 5.6.
The ”Tools” menu contains a collection of useful routines such as the calculation of the solar
CHAPTER 4. WORKFLOW
31
zenith and azimuth angles, spectral classification, nadir normalization for wide field-of-view imagery, adding of a synthetic blue channel for multispectral sensors without a blue band (e.g. SPOT),
spectral calibration, conversion of the monochromatic atmospheric database from one to another
solar irradiance spectrum, BIL to BSQ conversion, and more; see chapter 5.7.
Finally, the ”Help” menu allows browsing of the ATCOR user manual, provides a link to web
resources, and displays license and credits information, see chapter 5.8.
4.2
First steps with ATCOR
The ’Atm.Correction’ button of Fig. 4.5 displays the choices ’ATCOR2: multispectral sensors,
flat terrain’ and ’ATCOR3: multispectral sensors, rugged terrain’. If the add-on for user-defined
(mainly hyperspectral) sensors is included, then the buttons ’ATCOR2: hyperspectral sensors, flat
terrain’ and ’ATCOR3: hyperspectral sensors, rugged terrain’ will also appear, compare Fig. 4.5.
The last button starts the ATCOR processing in the image tiling mode, i.e., the image is divided
into sub-images in x and y direction as specified by the user. This mode is intended for large scenes,
compare section 5.3.12, and the ’*.inn’ file with the processing parameters must already exist.
Figure 4.5: Top level graphical interface of ATCOR: ”Atmospheric Correction”.
Let us start with a scene from a flat terrain area where no digital elevation model (DEM) is needed.
Then the panel of Fig. 4.6 will pop up. First, the ’INPUT IMAGE FILE’ has to be selected. ATCOR requires the band sequential format (BSQ) for the image data with an ENVI header. The
TIFF format is supported with some restrictions, see chapter 9.2. Next the acquisition date of
the image has to be updated with the corresponding button. We work from top to bottom to
specify the required information. The scale factor defines the multiplication factor for surface reflectance (range 0 - 100%) in the output file. A scale factor of 1 yields the output as float data
(4 bytes per pixel). However, a scale factor of 100 is recommended if the input data is 16 bit (2
bytes) per pixel, so a surface reflectance value of say 20.56% is coded as 2056 and is stored as a 2
byte integer which means the file size is only half of the float file size. If the input data is 8 bit
data then a scale factor of 4 is recommended, i.e., a surface reflectance of 20.56% will be coded as 82.
If the input file name is ”image.bsq” then the default output file name for the atmospherically corrected image is ”image atm.bsq”. The user may modify the output name, but it is recommended
to keep the ” atm.bsq” qualifier to facilitate the use of subsequent programs. Then the sensor view
geometry has to be specified as well as the sensor and the calibration file. The atmospheric file
contains the look-up table (LUT) results of the radiative transfer calculations, separately for the
CHAPTER 4. WORKFLOW
32
solar and thermal region. These LUTs are calculated for a nadir view, but for tilt sensors the
files ”phasefct*.bin” in the ”../atcor/bin” directory contain the path radiance as a function of the
scattering angle, and the appropriate file is automatically included.
Figure 4.6: ATCOR panel for flat terrain imagery.
Note that for a new user-specified sensors, these LUTs have to be calculated once prior to the first
call of ATCOR. This is done with the module RESLUT (see section 5.2.4) available under the ’New
Sensor’ menu.
It is recommended to check the quality of the atmospheric correction before processing the image
data. For that purpose, the SPECTRA module should be used where the surface reflectance of
small user-defined boxes can be evaluated and compared with library spectra, compare chapter
5.3.6. In case of calibration problems, the spectral calibration module, available from the ’Tools’
button of Fig. 4.1, and the radiometric (inflight) calibration may be employed before finally processing the image data. The ’AEROSOL TYPE’ button provides an estimate for the recommended
aerosol type (e.g. rural, maritime, urban) derived from the scene. This module also provides a
visibility value for each aerosol type based on reference pixels (dark vegetation) in the scene. The
’VISIB. ESTIMATE’ button provides a visibility value for the selected aerosol type by checking
dark scene pixels in the red band (vegetation, water) and NIR band (water). It is assumed that
the lowest reflectance in the red band is 0.01 (1 percent) and 0.0 in the NIR band. Therefore, the
obtained visibility value usually can be considered as a lower bound. The higher visibility value
(of ’AEROSOL TYPE’ and ’VISIB. ESTIMATE’ ) is recommended as a start visibility for the
SPECTRA module.
CHAPTER 4. WORKFLOW
33
The ’Inflight Calibration’ is described in chapter 5.3.9. This module is usually not required for first
use of the software.
The ’WATER VAPOR’ button can be used to test the appropriate band combinations for the
retrieval of a water vapor map without a calculation of the surface reflectance cube.
Th button IMAGE PROCESSING starts the atmospheric correction process from the entered parameters. A series of sequential panels are displayed after this button is pressed. Fig. 4.7 shows
the panel with the image processing options. Some options may not be accessible, they are blocked
if the required spectral bands are missing.
In case of a mountainous terrain the ATCOR3 button has to be selected (Fig. 4.1, ”Atm.Correction”).
This panel is similar to Fig. 4.6, but an additional panel for the specification of the DEM files will
appear (Fig. 4.8). The user has to provide the DEM file matched to the size of the input image.
The slope and aspect files can be calculated from the corresponding module under ”Topographic”
(Fig. 4.1). These two files may need a special treatment as discussed in chapter 5.3.11. Therefore,
they are not automatically created from the elevation file. The ”skyview” file and cast shadow file
are optional, only required in extremely steep terrain. The ”skyview” calculation can also be found
under the ”Topographic” label of Fig. 4.1.
Figure 4.7: Image processing options. Right panel appears if a cirrus band exists.
Depending on the selected image processing option some additional panels may pop up. Most of
them are listed in chapter 5.7.4, but they are self-explaining and will not be discussed here. They
also contain default settings which can be used in most cases. When the main panel (Fig. 4.6)
is left and the ”SPECTRA” or ”IMAGE PROCESSING” sections are entered, all information is
written to a processing initialization (.inn) file, e.g., ”image.inn”. When reloading the input file
this information is read from the .inn file, so a new specification of all processing parameters is not
necessary. Therefore, this .inn file can also be used for a batch processing, see chapter 6.
The remaining sub-chapters of chapter 4 may be skipped during the first reading if the definition of
user-defined (hyperspectral) sensors is not relevant. These sub-chapters can be consulted if specific
questions arise, e.g., about batch job processing.
CHAPTER 4. WORKFLOW
34
Figure 4.8: Panel for DEM files.
4.3
Survey of processing steps
Figure 4.9 shows the typical workflow of atmospheric correction. A detailed description of the
corresponding graphicical user interface for each module is given in chapter 5. First, the image is
loaded with possibly some additional information (DEM files). Then the sensor has to be defined,
the radiometric calibration file, and a basic atmosphere/aerosol type combination, e.g. a summer
atmosphere with a rural aerosol. It is recommended to check the validity of the calibration and
to estimate the visibility (and perhaps the atmospheric water vapor column wv) before processing
the image cube. The SPECTRA module can be employed for this purpose, see chapter 5.3.6.
Reflectance spectra of scene targets can be displayed as a function of visibility and water vapor
(the winter, fall, summer, and tropical atmospheres have different wv contents, see appendix A)
and compared with field or library spectra. If calibration problems exist in a few channels a copy
of the calibration file can be edited in these channels to match the reference spectrum. If there are
problems in many channels the inflight radiometric calibration module should be used to generate
a calibration file as discussed in chapter 5.3.9.
When the calibration file is OK the user can continue with the image processing. Depending on
the available sensor channels there are options to process the imagery with constant or variable
visibility and atmospheric water vapor. For large FOV sensors an option is available to correct for
across-track illumination (BRDF) effects. This is especially useful if the image recording took place
in the solar principal plane. In addition, a spectral polishing can be performed for the atmospherically and / or BRDF corrected data as indicated by the dotted lines of figure 4.9 . The polishing
requires hyperspectral imagery. Finally, a classification may be performed.
Figure 4.10 shows the input / output image files associated with ATCOR processing. On the left
part the flat terrain case is treated, on the right part the rugged terrain case. In mountainous
terrain, the DEM, DEM slope and aspect files are required. Optional input are the skyview file
and the shadow map, the latter can also be calculated on-the-fly. The slope and aspect files can be
calculated from ATCOR’s interactive menu, or run as a batch job (slopasp batch see chapter 6.2).
The skyview file has to be computed with the skyview program, see chapter 5.4.2.
CHAPTER 4. WORKFLOW
35
Figure 4.9: Typical workflow of atmospheric correction.
4.4
Directory structure of ATCOR
Figure 4.11 shows the directory structure of the satellite version of ATCOR. There are a number of sub-directories with the following content: The ’bin’ directory holds the ATCOR program
with all modules as listed in chapter 5. The ’cal’ directory holds all supported satellite sensors
in sensor-specific sub-directories. The sensor definition is contained in two files: one contains the
extraterrestrial solar irradiance (e.g. ’e0 solar aster.spc’ ), the second one contains the radiometric calibration coefficients, e.g., ’aster.cal’. The ’atm lib’ contains the results of the atmospheric
database after resampling with the sensor-specific spectral response curves. The ’spec lib’ is a directory containing prototype reflectance spectra of water, soils, vegetation, asphalt etc. Here the
user can also put field measurements of surface reflectance spectra resampled for the appropriate
sensor. This is useful for inflight calibration or comparison of scene spectra with ground spectra.
Finally, the ’demo data’ contains some demo imagery to be able to run ATCOR immediately.
4.5
Convention for file names
Although file names are arbitrary it is useful to agree on some conventions to facilitate the search
of files, especially concerning the extensions of file names.
Input images to ATCOR must have the band sequential format (BSQ), therefore it is recommended
to employ the ’.bsq’ as an extension, e.g. ’image1.bsq’ . Then in this example the default output
file name of ATCOR will be ’image1 atm.bsq’ and a log report of the processing is available in
CHAPTER 4. WORKFLOW
36
Figure 4.10: Input / output image files during ATCOR processing.
’image1 atm.log’.
Once an image is processed with ATCOR all input parameters are saved in a file ’*.inn’ that is
automatically loaded should the image be processed again.
The recommended extension for the radiometric calibration files is ’.cal’ . Other extensions are
’* ele.bsq’ for the digital elevation file, ’* slp.bsq’ for the DEM slope file, ’* asp.bsq’ for the DEM aspect, ’* sky.bsq’ for the sky view file, ’* ilu.bsq’ for the solar illumination file in rugged terrain, and
’ cla.bsq’ for the classification map of SPECL. The visibility index map is named ’* visindex.bsq’,
the aerosol optical thickness is ’* aot.bsq’, the cloud/building shadow map is named ’* fshd.bsq’,
and the atmospheric water vapor map ’* wv.bsq’.
Thermal band imagery
In case of thermal band imagery the surface temperature and emissivity are stored in separate files.
Surface temperature is appended to the reflectance cube, i.e. is included as the last channel in the
’* atm.bsq’ file, e.g., ’image1 atm.bsq’.
The surface temperature calculation is based on an assumption for the emissivity. A constant
emissivity or a surface cover-dependent emissivity can be selected as options. The simple case of a
3-class emissivity file (vegetation = 0.97, soil = 0.96, others = 0.98) is calculated on the fly.
Its output file name is ’image1 atm emi3.bsq’, the ’3’ indicating the 3 classes.
In case of standard sensors with multiple thermal bands, e.g. ASTER, the spectral emissivity
channels are not computed and ATCOR uses only one of the thermal bands, band 13 in case of
ASTER. If ASTER band 13 is offered as a single-channel input file to ATCOR the emissivity is set
to a constant value of = 0.98 for the surface brightness temperature calculation. If all reflective
bands and the thermal bands of ASTER are geocoded and offered as a 14-channel file to ATCOR
then the 3-class emissivity option is also available.
If a user is interested in derived surface emissivity data, the corresponding instrument (e.g., ASTER)
has to be defined as a user-specified sensor, see chapter 4.6.
CHAPTER 4. WORKFLOW
37
Figure 4.11: Directory structure of ATCOR.
4.6
User-defined hyperspectral sensors
Examples of satellite hyperspectral sensors are Hyperion and CHRIS/Proba. Since the channel
center wavelength of these instruments may change from scene to scene, they have to be treated
as user-specified sensors, and a flexible interface has been implemented to enable the calculation
of atmospheric LUTs adapted to the spectral channel properties. This interface is similar to the
one for the airborne ATCOR, and the corresponding part of the airborne ATCOR user manual
is repeated here. The hyperspectral tool is an optional add-on to the satellite ATCOR. Although
it is mainly intended for hyperspectral sensors it can of course also be employed for user-defined
multispectral instruments.
The first step is the definition of a new ’sensor’ subdirectory, compare Figure 4.13 and Fig. 5.11.
It serves as the start folder of further subdirectories for the user-defined hyperspectral sensors, e.g.,
’chris m1’. A few sensor description files have to be provided by the user, as explained in the next
section.
4.6.1
Definition of a new sensor
A few steps have to be taken to include a new satellite sensor in ATCOR. They are supported by
the respective panels. On the level of the ATCOR installation directory, the following steps are to
be taken:
• A new sensor subdirectory in the ”.../atcor/sensor/” folder has to be created. This is easiest
done using the routine Define Sensor Parameters as described in chapter 5.2.1. Please make
sure this name does not agree with an existing multispectral sensor name in the ”../atcor/cal/”
folder. This process may also be done manually by copying and adapting an existing userdefined sensor or one of the samples provided (or use the function above to make the changes).
CHAPTER 4. WORKFLOW
38
Figure 4.12: Template reference spectra from the ’spec lib’ library.
The dashed spectra are resampled with the Landsat-5 TM filter curves.
• A sensor-definition file must be specified. Just copy any of the existing files, e.g., ”sensor chris m1.dat”, and modify the appropriate lines, see the next table.
• A wavelength file (’*.wvl’) has to be specified. It is a simple ASCII file with three columns
(band number, center wavelength, and bandwidth), compare Fig. 5.11. Center wavelength
and bandwidth may be given in the nm or µm unit. The first line may contain an optional
header with text. This wavelength file will be used to create the spectral response function
for each band as a numerical table (the ’band*.rsp’ files), compare Fig. 5.11.
Eight analytical filter shapes can be selected from the top level graphical interface (Fig. 4.1
when pressing the ’New Sensor’, then ’Create Channel Filter Files’ button. Then the menu
of Fig. 4.14 will pop up, and one of these 8 filter shapes can be selected. Filter numbers 1
to 4 are of the Butterworth type, the slow drop-off for the Butterworth order 1 is truncated
at the 0.05 response and set to zero. The filter type 9 (parameter filter type in Table 4.3) is
reserved for arbitrary user-specified channel filter functions (the ’band*.rsp’ files).
• A calibration file (e.g., ”chris m1.cal”) has to be provided in the new sensor sub-directory.
• The RESLUT (resample atmospheric LUTs) program has to be run to generate the atmospheric LUTs for the new sensor employing the monochromatic atmospheric database in
”.../atcor/atm database/”. These resampled ’*.atm’ files will automatically be placed in a
sub-directory of ’.../atcor/atm lib/’ with the name of the selected sensor. RESLUT will
also create the resampled spectrum of the extraterrestrial solar irradiance in the appropriate
CHAPTER 4. WORKFLOW
39
Figure 4.13: Directory structure of ATCOR with hyperspectral add-on.
”.../sensor/chris m1/” folder, see chapter 9.1.4, e.g., ”e0 solar chris m1.spc”.
Remember that the sensors might have to be specified as scene-dependent if the center wavelengths
and/or bandwidths change, so you might need sensor subdirectories such as ”chris m1 11april2003”
or ”chris m1 scene3 29june2004”.
Figure 4.14: Supported analytical channel filter types.
The next two tables present examples of a sensor definition file for an instrument without thermal
bands and with thermal bands, respectively.
Line 1 is retained to be compatible with the airborne version of ATCOR. Line 6 is a required
dummy to be compatible with previous versions.
CHAPTER 4. WORKFLOW
5.0
1
0
0
1
0
6000
128
0
0
40
across-track FOV [degree], pixels per line (dummy to agree with airborne ATCOR)
first, last reflective band (0.35-2.55 µm)
first, last mid IR band (2.6 -7.1 µm)
first, last thermal band (7.1 -14 µm)
flag for tilt capability (1=yes, 0=no)
required dummy
Table 4.1: Example of a sensor definition file (no thermal bands).
4.0
1
73
74
0
0
77
3000
72
73
79
cross-track FOV [degree], pixels per line (dummy to agree with airborne ATCOR
first, last reflective band (0.35-2.55 µm)
first, last mid IR band (2.6 -7.1 µm)
first, last thermal band (7.1 -14 µm)
flag for tilt capability (1=yes, 0=no)
no gain settings (required dummy)
temperature band (itemp band=77)
Table 4.2: Sensor definition file: instrument with thermal bands.
Any mid-IR bands are skipped in the processing, the surface temperature band (itemp band) is
appended after the reflective bands as the last channel of the ” atm.bsq” output file.
4.7
Spectral smile sensors
Imaging systems can employ different techniques to record a scene: the whiskbroom design uses
a rotating or oscillating mirror to collect an image line in across-track direction (with one or a
few detector elements per spectral band). The forward direction is provided by the motion of the
platform. Secondly, a pushbroom linear array can perform the same task without moving optical
elements, but the number of array lines (each recording a certain spectral channel) in the focal
plane is limited. The third imaging technique employs an area detector array where one direction
collects the spatial information (across-track) and the orthogonal direction covers the spectral dimension. The advantage of the last two techniques is a longer pixel dwell time and a potentially
improved signal-to-noise ratio (SNR). The drawback is a substantial increase in the spectral and
radiometric characterization, i.e., a change of the channel center wavelength across the columns
of the array (spectral ”smile”), spatial misregistration (”keystone”), and detector non-uniformity
problems [48], [17], [70]. Typical representatives of the whiskbroom type are Landsat TM/ ETM,
HyMap, AVIRIS, and Daedalus. These instruments almost show no spectral smile, i.e., the channel
center position and bandwidth do not depend on column pixel location. Spaceborne hyperspectral
instruments showing the ”smile” effect are Hyperion and CHRIS/Proba, airborne instruments are
for example CASI-1500 and APEX.
This section describes the ATCOR input files required for smile sensors. There are only two changes
compared to the ”non-smile” instruments:
• The sensor definition file, e.g., ”sensor chris mode3.dat”, needs one more line (see Table 4.3)
containing the parameters ismile (=1 if smile sensor, otherwise 0) and filter type (a number
between 1 and 9 for the type of channel filter function) compare section 4.6.1 and Fig. 4.14.
CHAPTER 4. WORKFLOW
41
The filter types 1 to 8 are analytical functions, filter type 9 is reserved for arbitrary userdefined channel filter functions (the ’band*.rsp’ files). Center wavelength and bandwidth for
each channel are defined in the wavelength file (’*.wvl’ ) pertaining to the center pixel=column
of the detector array.
• For each spectral channel j the channel center wavelength λc (j) depends on the image column
or pixel position x. The absolute value of λc (j) is specified in the wavelength file used to
generate the spectral channel response functions, and it is also included in the sensor-specific
solar irradiance file (e.g., ”e0 solar chris mode3.spc”). If n is the number of image columns,
the change ∆(x, j) of the center wavelength λc (j) with the pixel position x can be described
as a 4th order polynomial (using the nm unit):
∆(x, j)[nm] = a0 (j) + a1 (j) · x + a2 (j) · x2 + a3 (j) · x3 + a4 (j) · x4
(4.1)
λc (x, j) = λc (j) + ∆(x, j)
(4.2)
The first left-hand image pixel is x=0, the last right-hand image pixel is x=(n-1). The
coefficients ai (j) have to be stored in an ASCII file, corresponding to the band sequence.
The first column must contain the wavelength or band number, followed by the five channeldependent coefficients (beginning with a0 and ending with a4 ), one line per channel. The
fixed file name is smile poly ord4.dat and it has to be located in the corresponding sensor subdirectory. In the ideal case these coefficients should be derived from laboratory measurements.
Since an accurate description is only required for channels in atmospheric absorption regions,
the 5 coefficients can be set to zero for the remaining regions, but they must be provided for
each channel. If all 5 coefficients are set to zero for a certain channel, this channel is processed
in the ”non-smile” mode which will expedite the processing.
2.0
1
0
0
0
0
1
512
128
0
0
5
across-track FOV [degree], pixels per line
first, last reflective band (0.35-2.55 µm)
first, last mid IR band (2.6 -7.1 µm)
first, last thermal band (7.1 -14 µm)
no tilt in flight direction
required dummy
1=smile sensor, 5 = Gaussian spectral channel filter
Table 4.3: Sensor definition file: smile sensor without thermal bands.
Imagery from smile sensors must be processed in the raw geometry (IGM Image Geometry Map) to
preserve the original image columns. During the surface reflectance retrieval the atmospheric / topographic correction is performed on a per column basis, i.e., to each image column its appropriate
center wavelength /bandwidth is associated. For the nadir pixel the channel center and bandwidth
are defined in the sensor’s wavelength file (’*.wvl’ ), for off-nadir pixels the center wavelength is
shifted according to eq. 4.1. Currently, the change in spectral bandwidth with image column is
assumed to be negligible.
The per-column processing typically implies a factor of 8 increase in processing time. The following
steps are to be performed:
CHAPTER 4. WORKFLOW
42
1. Define a sensor (∗wvl, ∗cal, ∗rsp files, RESLUT) using the original set of wavelengths (prelaunch values, as provided with the data from the data provider),
2. Run the smile detection tool (compare Section 5.7.7, using the sensor defined in 1 and appropriate absorption features, to derive the polynomial coefficients smile poly ord4.dat for
smile correction in step 3; alternatively: enter the smile polynomial factors from laboratory
calibration. Note: if two detectors are in the sensor system, this should be done separately
for VNIR and SWIR, option ’repeat values’, resolution 0.02 nm. Combine the two files for
VNIR and SWIR manually into one file afterwards.
3. Using the same sensor as above, run the atmospheric correction with the smile correction
option switched ’ON’; (after putting the new file smile poly ord4.dat into the sensor definition
directory),
4. Apply the spectral polishing routine (see Section 5.5.2 and 5.5.3, and
5. Run the Spectral Smile Interpolation module (see Section 5.5.4 on the atmospherically corrected image.
4.8
Haze, cloud, water map
Although the surface reflectance cube (and temperature / emissivity for thermal channels) is the
main result of the atmospheric correction, some additional products are often requested. One of
these products is a map of the haze, cloud, water and land pixels of a scene. This map not only
delivers a basic scene classification, but it may also contain information about potential processing
problems. For example, if turbid water pixels are not included in the water mask, the haze mask
may also be not appropriate and consequently, results of the haze removal over land might be of
poor quality. Such a pre-classification as part of the atmospheric correction has a long history
[37, 38, 55, 56, 57, 39, 44]. It is also employed as part of NASA’s automatic processing chain for
MODIS [45] using the classes land, water, snow/ice, cloud, shadow, thin cirrus, sun glint, etc.
Therefore, the calculated haze/cloud/water map is a useful optional output of ATCOR. It is enabled
by setting the parameter ihcw = 1 in the preference parameters.dat file (see chapter 9.3). If the file
name of the imagery is ”image.bsq” the corresponding map is named ”image out hcw.bsq”. It is a
1-channel false-color coded ENVI file. In principle, if a certain mask of ”image out hcw.bsq” (say
haze pixels) contains artifacts, it may be edited, and if the edited file is named ”image hcw.bsq”
it will automatically be used for the ATCOR processing. This means ATCOR can repeat the
processing with an improved (edited) haze mask.
The file ”image hcw.bsq” can also be provided by an external (ATCOR-independent) source. In
any case, if this files exists, ATCOR will skip its internal calculations of these masks and use the
pre-calculated map.
The haze/cloud/water file contains the following classes (see Table 4.4):
• land
• water
• boundary layer haze (two classes: thin-to-medium haze, and medium-to-thick haze)
• cirrus clouds (three classes: thin, medium, and thick cirrus, provided a narrow channel around
1.38 µm exists)
CHAPTER 4. WORKFLOW
43
Figure 4.15: Optional haze/cloud/water output file.
• cloud over land, cloud over water
• snow (requires a 1.6 µm channel)
• saturated pixels using the criterion T > 0.9 ∗ DNmax where T is a threshold set at 0.9 times
the maximum digital number. This criterion is only used for 8 bit and 16 bit (signed or
unsigned) data, no threshold is defined for 32 bit (integer or float) data. As an example,
for an 8 bit/pixel data encoding we obtain T = 0.9*255 = 230, and pixels with a grey value
greater than 230 are flagged as (truly or potentially) saturated.
Although the saturation nominally starts at DNmax some sensors already show a non-linear
behavior around 0.9 ∗ DNmax , so the factor 0.9 is a precaution to be on the safe side.
This saturation check is performed for two channels in the visible region (blue band around
470-500 nm, and a green band around 550 nm). For multispectral sensors, the blue band
is usually the critical one concerning saturation. For hyperspectral sensors with many blue
bands the one closest to 450 nm is taken. Although the haze/cloud/water file contains
saturated pixels based on two visible bands, the percentage of saturated pixels for all bands
will be given in the corresponding ”.log” file. However, the check of the blue and green
channel normally captures all saturated pixels.
Note: cloud (or building) shadow pixels are not included here, they are stored separately (file
image fshd.bsq”).
4.9
Processing of multiband thermal data
Several options have been implemented to process multiband thermal data, see chapter 10.1.4 for
details. Apart from the final products (surface temperature and emissivity) intermediate products
are available such as surface radiance, at-sensor blackbody temperature, and surface blackbody
temperature. The intermediate products might be useful to trace back spectral or radiometric
problems. If image.bsq denotes the file name of the input image then the following products are
available:
• image atm emi3.bsq : 3 or 4 emissivity classes obtained from an on-the-fly (in memory)
pre-classification (vegetation, soil, sand, water). The pre-classification requires daytime data
acquisition and spectral bands in the solar region. This file has one channel with the emissivity
values for the specified thermal band, or in case of ANEM the pixel-dependent values assign
the maximum emissivity of all available thermal bands.
CHAPTER 4. WORKFLOW
44
label
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
definition
geocoded background
shadow
thin cirrus (water)
medium cirrus (water)
thick cirrus (water)
land
saturated
snow
thin cirrus (land)
medium cirrus (land)
thick cirrus (land)
thin-medium haze/land
medium-thick haze/land
thin-medium haze/water
medium-thick haze/water
cloud/land
cloud/water
water
Table 4.4: Class label definition of ”hcw” file.
• image atm emiss.bsq contains the spectral emissivity map for all thermal channels.
• image atm emiss lp3.bsq is the same emissivity map but filtered with a 3-channel low pass
filter to smooth spectral noise features (requires at least 10 thermal bands).
• image atm emiss lp5.bsq is the same emissivity map but filtered with a 5-channel low pas
filter to smooth spectral noise features (requires at least 30 thermal bands).
• image atm isac emiss.bsq : emissivity cube for the ISAC algorithm.
• image at sensor channel tmax.bsq : map of channel numbers with maximum at-sensor temperature.
• image at surface channel tmax.bsq : map of channel numbers with maximum surface temperature.
• image at sensor tbb.bsq : at-sensor brightness temperature cube
• image at surface tbb.bsq : at-surface brightness temperature cube.
The last channel of image atm.bsq contains the surface temperature map evaluated with the appropriate emissivity, the preceding thermal channels in this file contain the surface radiance.
In case of the ISAC algorithm an additional file image isac lpath trans.dat contains the spectral
path radiance and transmittance estimates for the scene. Fig. 4.16 shows an example of these
spectra derived from a SEBASS scene.
Fig. 4.17 presents the at-sensor/at-surface radiance and brightness temperatures. The at-sensor
products clearly show the atmospheric absorption features which are removed in the at-surface
CHAPTER 4. WORKFLOW
45
Figure 4.16: Path radiance and transmittace of a SEBASS scene derived from the ISAC method.
quantities, apart from small residual effects. The bottom graphic presents the corresponding surface
emissivity spectrum.
CHAPTER 4. WORKFLOW
Figure 4.17: Comparison of radiance and temperature at sensor and at surface level.
46
CHAPTER 4. WORKFLOW
4.10
47
External water vapor map
Sometimes, it is convenient to use an external water vapor map, even if this map could be derived from the scene. If the scene is named ”scene.bsq” then the external map should be named
”scene wv.bsq” and it must have the same number of image lines and pixels per line as the scene.
If this file is available in the same directory as the scene, it will be automatically used during the
processing and the usage is also documented in the log file (”scene atm.log”). Note: this feature is
only supported for instruments that are able to retrieve the water vapor column with the intrinsic
channels, because the prerequisite is the availability of the corresponding LUTs.
Chapter 5
Description of Modules
For most ATCOR modules a convenient graphical user interface is available, but batch jobs can
also be submitted. If the atcor binary atcor.sav is opened by the IDL virtual machine or when
”atcor” is typed on the IDL command line a menu with pull-down buttons pops up, see Figure 5.1,
with a thematic grouping of modules. A detailed discussion of the interactive panel-driven modules
is given hereafter whereas a description of the batch commands can be found in chapter 6.
Figure 5.1: Top level menu of the satellite ATCOR.
48
CHAPTER 5. DESCRIPTION OF MODULES
5.1
49
Menu: File
The menu ’File’ offers some collaborative tools for handling of the data and ENVI files. Below, a
short description of the individual functions is given:
Figure 5.2: The File Menu
5.1.1
Display ENVI File
Use this function for displaying a band sequential ENVI-formatted file in a simple way
1
Figure 5.3: Band selection dialog for ENVI file display
An initial dialog allows to select the band(s) to display - either a true color, CIR color, or a single
band mode may be selected. .
After display, the following options are available within from the menu:
1
The ENVI format is a raw binary file, accompanied by an ASCII header ∗.hdr; in ATCOR it should be stored in
band sequential order.
CHAPTER 5. DESCRIPTION OF MODULES
50
File:Display ENVI Image Displays an additional ENVI image in a new window (sorry, no linking available)
File:Show ENVI Header Displays the ENVI header of the current image in a new editable
window. This allows to make changes to the ENVI header. Note that the file needs to be
loaded from scratch if changes have been made.
File:Band Selection Allows to select a new combination of spectral bands and updates the display.
File:Display TIFF Image Loads a multi-band TIFF image in a new window.
File:Close Closes the window.
Edit:Equalize Image Performs a histogram equalization on the three bands.
Edit:Scale Image Applies standard linear scaling on the imagery on 5 levels.
Edit:Scale Zoom Applies standard linear scaling on the imagery on 5 levels based on the statistics
of the Zoom Window.
Edit:No Scaling Reverts to unscaled display of the image.
Edit:Scale to Range Scales a single-band image linearly to a range entered as lower and upper
limit (only applicable in single band displays).
Edit:Load Color Table Applies standard linear scaling on the imagery on 5 levels.
Profile:Horizontal Opens a window for a horizontal profile through the image (of the first band
only). The profile is updated for the cursor location in the zoom window whenever the zoom
window is clicked.
Profile:Vertical Opens a window for a vertical profile through the image (of the first band only).
Profile:Spectrum Opens a window for a spectrum of the image (for images with 4 and more
bands only).
Export Allows to export the currently displayed image to one of the given image data formats.The
displayed image may be exported as a scaled 8bit/24bit image to the available standard image
formats.
Note: when clicking in the zoom window, the current image value and location is displayed, or a
small plot of the spectrum at this pixel location is created (same as the function Profile:Spectrum
of above). The menu in the such loaded window allows to save the spectrum to an ASCII table,
to adapt the graph’s properties and font size, configure the display and to output the graph to an
appropriate graphics format.
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.4: Display of ENVI imagery
51
CHAPTER 5. DESCRIPTION OF MODULES
5.1.2
52
Show Textfile
Use this function if you need to edit a plain text file which comes together with the data to be
processed. The file is opened in a simple editor and may be changed and saved. The function
comes handy if an ENVI header needs to be checked or updated (e.g.). Selecting the ’Save’ or the
’Save As’ function in the submenu will allow to overwrite the file or to create a new one.
Figure 5.5: Simple text editor to edit plain text ASCII files
5.1.3
Select Input Image
This function allows to select the basis input image (i.e., the band sequential uncorrected image
data in ENVI format). It is useful to define the starting point including the default paths of the
images for further processing.
5.1.4
Import
A small number of standard formats is supported for importing data layers to be used with ATCOR:
ENVI BIP Image Imports and transforms an ENVI image in BIP (band interleaved by pixel)
format to the ATCOR default BSQ (band sequential) format.
ENVI BIL Image Imports and transforms an ENVI image in BIL (band interleaved by line)
format to the ATCOR default BSQ (band sequential) format.
Erdas Imagine Imports an uncompressed image in ERDAS Imagine format to ENVI format
(specifically suited for DEM data import).
Hyperion Raw Image Imports a Hyperion image in ENVI format, 242 spectral bands for use
with ATCOR. The number of bands is reduced to 167 according to the sensor definition
provided with the software.
CHAPTER 5. DESCRIPTION OF MODULES
5.1.5
53
Plot Sensor Response
In the panel Plot Sensor Response, one may select the respective sensor response from within the
available response functions in the ATCOR installation (or elsewhere). When selecting a response
file, the related bands are loaded automatically and the total number of bands is displayed. The
band range for display can be adjusted manually afterwards.
Normalization of the curves can be such that the area below the curves is constant (same weight
of the functions) or the maximum is at 1 for all curves. The displayed graph may be adjusted in
appearance and size and finally being exported to a standard graphics file for further use.
Figure 5.6: Plotting the explicit sensor response functions
5.1.6
Plot Calibration File
When selecting this function, the dialog defaults to the atcor installation for the selection of a ∗.cal
file to be displayed. Both, gain and offset are then plotted in the same graph to get an overview of
their relative values.
5.1.7
Show System File
This is the same function as ’Show Textfile’ but defaults always to the ATCOR installation in order
to allow to select an ATCOR system file from within the installation, such as the cal-files, the solar
reference files, the sensor definition files. The function then allows to adjust and save the respective
text contents of the selected file.
CHAPTER 5. DESCRIPTION OF MODULES
54
Figure 5.7: Plotting a calibration file
Figure 5.8: Displaying a calibration file (same file as in Fig. 5.7)
5.1.8
Edit Preferences
The default settings of ATCOR may be edited through this panel. The updated preferences are
then written to the ASCII file as displayed at the top of the panel. The preferences persist for the
user who started the ATCOR application the next time the system is started and also for batch
processing.
NOTE: Preferences are set when one of the ATCOR modules has been opened. So, one should
select one of the options from within the menu ’Atm. Correction’ before editing the preferences.
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.9: Panel to edit the ATCOR preferences
55
CHAPTER 5. DESCRIPTION OF MODULES
5.2
56
Menu: New Sensor
The menu ’New Sensor’ is used to create a new sensor from calibration information, if the sensor
is not supported as standard sensor by ATCOR.
Figure 5.10: The ’New Sensor’ Menu
Fig. 5.11 shows the three required steps to include a new user-defined (usually hyperspectral)
sensor to ATCOR. The example uses a sensor with 96 spectral bands, denoted as ’sensor x96’. A
sub-directory of ’.../atcor/sensor/’ has to be created (named ’x96’) and the three files as displayed
in Fig. 5.11 have to be placed in this sub-directory. This procedure is supported by the Function
’Define Sensor Parameters’. After execution of steps 1 and 2, the new sensor will be automatically
detected when ATCOR is started. Details about the sensor definition files are explained in chapter
4.5. Template files of several sensors are included in the distribution.
Figure 5.11: Sensor definition files: the three files on the left have to be provided/created by the user.
CHAPTER 5. DESCRIPTION OF MODULES
5.2.1
57
Define Sensor Parameters
This panel is the first step if a new sensor is to be defined. The panel as displayed in Fig. 5.12
allows the below options.
Sensor Selection
Select : Select any of the already defined sensors from within ATCOR note: a sensor is selected
by on sensor file within a sensor directory.
New : A new sensor is created within the ATCOR installation, which results in a new directory
in the ’sensor’ directory of the installation.
Rename : The current sensor is renamed (both directory and sensor∗.dat file)
Delete : Allows to delete any sensor directory and all of its contents.
Inputs
Sensor Type This is to be selected first, smile sensor and thermal sensors require additional
inputs (as displayed in the panel).
Sensor Total FOV [ deg ] : edge to edge FOV in across track direction in degrees.
Number of Across Track Pixels: : Nominal number of pixels in the unrectified data.
First, last Reflective Band: Band numbers (starting at one) - none: 0
First, last Mid IR Band: Band numbers (starting at one) - none: 0
First, last Thermal IR Band: Band numbers (starting at one) - none: 0
Thermal Sensor: Temperature Band Number: Spectral band used for temperature retrieval
algorithm (Optional -according to sensor type)
Smile Sensor Response Type , required for convolution when sensor definition is not given
explicetely, may be: ’Butterworth Order 1 (slow drop-off)’, ’Butterworth Order 2 (close to
Gauss)’ ’Butterworth Order 3 (between Gauss/Rect)’, ’Butterworth Order 4 (close to Rectangular)’ ’Gaussian ’ ’Rectangular ’, ’Triangular ’, ’Decreasing Binning (from Rectangular to
Triangular)’, or ’ - Arbitrary - ’
Outputs
A new sensor ∗.dat file, and possibly ’sensor’ directory is created.
ATTENTION: this routine requires write-access to the sensor directory of the ATCOR installation.
5.2.2
Create Channel Filter Files
ATCOR requires the spectral response of all bands of a sensor being present as a spectral filter
file (response file) ∗.rsp . For spectroscopic instruments, the band characteristics are often only
available by band center and width at FWHM (Full width half maximum). This function creates
the response curves from the latter information (compare Fig. 5.13).
CHAPTER 5. DESCRIPTION OF MODULES
58
Figure 5.12: Definition of a new sensor
Inputs
Wavelength File A wavelength reference file. Format: ASCII, 3 columns, no header; column 1:
band number; column2: center wavelength; column 3: band width. Unit: [nm].
Type of Filter Function The type defines the basic shape of each of the created response curves.
Options are: Butterworth Order 1 (slow drop-off)
Butterworth Order 2 (close to Gauss)
Butterworth Order 3 (between Gauss/Rect)
Butterworth Order 4 (close to Rectangular)
Gaussian
Rectangular
Triangular
Decreasing Binning (from Rectangular to Triangular)
Outputs
A numbered series of band ∗.rsp files are created at the same location as the wavelength reference file is situated. The files contain wavelength reference and the relative response in two ASCII
formatted columns.
CHAPTER 5. DESCRIPTION OF MODULES
59
Figure 5.13: Spectral Filter Creation
5.2.3
BBCALC : Blackbody Function
This routine calculates the blackbody function as described in section 10.1.4, weighted by the spectral response curve of the thermal band used for the temperature retrieval (compare Fig. 5.14).
Inputs
Spectral response file Select the ∗.rsp file of the spectral band in the thermal IR to be used for
temperature retrieval.
Exponential Fit - Limits The lower and the higher limit of the temperatures for which a fitting
function should be created.
Unit of radiance output Select the unit either per micron or without normalization.
Outputs
A file ∗ hs.bbfit is created containing the fitting parameters.
5.2.4
RESLUT : Resample Atm. LUTS from Database
The monochromatic database of atmospheric LUTs has to be resampled for the specific channel
filter functions of each sensor. Details are given in chapters 4.6.1 to 9.1.4. Figure 5.15 repeats the
panels of the LUT-resampling program RESLUT. The resampling has to be done separately for the
CHAPTER 5. DESCRIPTION OF MODULES
60
Figure 5.14: Black body function calculation panel
reflective and thermal region. Only the required range of flight altitudes and aerosol types should
be selected.
Figure 5.15: Panels of RESLUT for resampling the atmospheric LUTs.
CHAPTER 5. DESCRIPTION OF MODULES
5.3
61
Menu: Atm. Correction
The menu ’Atm. Correction’ contains the main processing modules of ATCOR, i.e., the panels
for ATCOR2 and ATCOR3 in both, used-defined and pre-defined, usually multispectral and hyperspectral modes. In this section, the main panels are first shortly described. Thereafter, the
subroutines SPECTRA and IFCALI and all panels related to them are explained.
Figure 5.16: The ’Atm. Correction’ Menu
5.3.1
The ATCOR main panel
Figure 5.17 (top) shows the input parameters required for ATCOR. The lower part of the panel
contains buttons for selecting SPECTRA, determining the aerosol type, employing inflight radiometric CALIBRATION, and starting the image processing. The processing options are shown in
the separate panel as described in section 5.3.11. The trivial panels, e.g., band selection, spatial
subimage etc. will not be shown here. The panels should be filled or clicked in the top-down
direction. The message widget at the bottom will display hints, warnings, or errors.
5.3.2
ATCOR2: multispectral sensors, flat terrain
The panel as decribed above and in figure 5.17 will appear when ATCOR2 is selected.
5.3.3
ATCOR3: multispectral sensors, rugged terrain
In case of the rugged terrain version of ATCOR the panel for the DEM files has to be specified in
addition (Figure 5.18). It pops up after the input file has been specified. A quick quality check is
performed on the DEM files. The solar illumination file is calculated and if its standard deviation
is large the panel of Figure 5.19 pops up with a warning. In this case the DEM elevation file (and
the derived files of DEM slope, aspect etc) probably have a lot of large steps. The DEM resolution
is often not appropriate for high spatial resolution imagery, and integer coded DEM’s might have
to be resampled and stored as float data. Appropiate action for resampling or low pass filtering is
recommended in these cases, see the tips in chapter 9.5. Figure 5.20 shows an example in terms of
the DEM illumination. The top image is obtained after low pass filtering the original elevation file,
the central image is the illumination based on the original DEM, and the bottom shows a 100 pixel
transsect of the original elevation data revealing the steps. The original DEM had a resolution of
30 m, was coded as 16 bit integer, and initially resampled to the 6 m pixel size of the image with
integer arithmetic. After reprocessing the elevation file the other DEM derived files should also be
reprocessed.
CHAPTER 5. DESCRIPTION OF MODULES
62
Figure 5.17: ATCOR panel.
The pixel size of the DEM files must be the same as the image pixel size specified on the main
panel, see figure 5.17. The physical units of pixel size (m) and adjacency range (km) are also used
to calculate the equivalent number of pixels needed to cover the adjacency range.
5.3.4
ATCOR2: User-defined Sensors
The menus for user defined (usually hyperspectral) sensors share the same functionalities as described above for multispectral systems in both flat and rugged terrain options. The major difference is the requirement of a specific sensor definition; ie. the sensor definition is editable and
adjustable. The ATCOR2 variant is recommended to speed up processing time and for fast checks
as hyperspectral image processing may be very time consuming in rugged terrain.
5.3.5
ATCOR3: User-defined Sensors
This routine is to be taken if highest accuracy is required in terrain for imaging spectroscopy instruments. The functionality is analoguous as described for the other panels.
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.18: Panel for DEM files.
Figure 5.19: Panel to make a decision in case of a DEM with steps.
63
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.20: Influence of DEM artifacts on the solar illumination image.
Top: illumination with low pass filtered DEM; middle: illumination based on original DEM;
bottom: 100 m transsect using original DEM, pixel size is 6 m.
64
CHAPTER 5. DESCRIPTION OF MODULES
5.3.6
65
SPECTRA module
The SPECTRA module (see figure 5.21) serves to extract spectra of different targets of the scene
as a function of the visibility. It is started from within one of the four possible ATCOR main
panels. These spectra can be compared to field spectra or library spectra to estimate the visibility.
Scene-derived spectra also may indicate calibration errors in certain channels. In that case, a copy
of the sensor calibration file can be edited to match the retrieved reflectance with the field / library
spectrum or the inflight calibration module may be employed (see chapter 5.3.9).
In most cases it is useful to check some scene-derived target spectra, e.g. water, vegetation, or soils,
before starting the processing of the image cube at the risk of ”blind” processing and obtaining
wrong results.
Figure 5.21: SPECTRA module.
To obtain a target spectrum of the scene click at any position in the image. In figure 5.21 the
solid white-line spectrum at the top shows a coniferous forest signature, the green line represents
a spruce reference spectrum taken from the spec lib directory, already resampled for the Landsat-5
TM sensor. The symbols mark the TM center wavelengths. A reference spectrum can be loaded
when clicking the corresponding button at the top right of the panel. The bottom graphics shows
soil and water spectra taken from the scene and a soil reference spectrum from the spec lib library.
CHAPTER 5. DESCRIPTION OF MODULES
66
An exact match of scene spectra and library spectra cannot be expected, but the trends (spectral
shapes) should be consistent.
The parameter Visibility can be set in the corresponding widget near the center of the panel and its
influence on the retrieved spectrum will be shown when placing the target box in the scene. To vary
the atmospheric water vapor content the user should switch to the main panel and select a different
atmosphere, e.g. switch from the mid-latitude summer atmosphere (with a column wv=2.9 cm) to
a tropical atmosphere (with wv=4.1 cm), compare chapter 6. Most multispectral satellite sensors
do not have spectral bands placed in water vapor regions, so the retrieved reflectance signature will
show a rather small dependence on the water vapor estimate. For sensors with water vapor bands,
e.g., Hyperion or MOS-B, the retrieved reflectance spectrum strongly depends on the water vapor
content. In this case, the water vapor map can be derived during the image processing (see the
panel of figure 5.17) as part of the reflectance retrieval. Note that the water vapor is not retrieved
from the image pixel for correction in the SPECTRA module as it is done in the image processing
for hyperspectral systems.
The button ”Save last spectrum” (upper right corner of figure 5.21) can be used to save the selected
surface reflectance spectrum. A sequence of target DN spectra can also be generated here that is
required as input to the spectral calibration module (currently only available for the hyperspectral
add-on module). Up to 9 targets can be defined to be used in the spectral calibration. They have to
be labeled consecutively, e.g. ”target1”, ”target2”, etc. These output file names (without file name
extension) have to be specified after pressing the button ”Save last spectrum”. For each target
name three files will be generated, e.g., ”target1.dat” (surface reflectance spectrum), ”target1.txt”
(a description file), and ”target1 dn1.dat” (the DN spectrum). The sequence of ”target∗ dn∗.dat”
files is used in the spectral calibration module.
5.3.7
Aerosol Type
The aerosol type is a parameter which is fixed for atmospheric correction. This routine searches
automatically for the best suited aerosol type for the currently selected image. This type can then
be used when selecting the atmospheric file.
5.3.8
Visibility Estimate
ATCOR uses the Dark Dense Vegetation (DDV) approach to calculate the best visibility for an
image. This button allows to calculate the visibility estimate for the whole image without going
into the image processing. Note, that for variable visibility options, the visibility will be calculated
anyhow from the image in the image processing.
5.3.9
Inflight radiometric calibration module
This chapter presents the GUI for the inflight calibration, which may also be invoked from one of
the four possible ATCOR main panels. The purpose is the calculation of the radiometric calibration
coefficients for spectral bands in the solar region based on measured ground reflectance spectra.
The user should be familiar with chapter 2.4 before using this function.
Note: a ground reflectance spectrum from a field spectrometer has to be resampled with the channel filter curves of the selected sensor. The field spectrometer file format should be converted into
a simple ASCII file containing the wavelength (nm or µm) in the first column and reflectance in
CHAPTER 5. DESCRIPTION OF MODULES
67
the second column. The resampling can then be done with the sequence ”Filter”, ”Resample a
Spectrum” from the ATCOR main panel. The result is an ASCII file with 2 columns: the first
contains the channel center wavelength (the nm and µm unit is allowed), the second contains the
resampled reflectance value (either in the 0 - 1 or 0 - 100% range).
If ”target1” is the name of the target, ATCOR provides three ASCII files with information on
target / background properties and the derived calibration file. These are the output of the ”c1”
option of ATCOR’s calibration module,
• File ”target1.adj” contains the original target DN1 , the adjacency corrected DN1∗ , and the
ground reflectance data for each band.
• File ”target1.rdn” (radiance versus digital number) contains the band center wavelength,
target radiance L1 and corresponding digital number. This file can be used as input to a
regression program ”cal regress” that allows the calculation of the calibration coefficients
with a least squares fit in case of multiple targets (more than two).
• File ”target1.cal” contains three columns: band center wavelength, offset or bias set to zero
(c0 = 0), and c1 according to equation (2.18).
Remark: a bright target should be used here, because for a dark target any error in the ground
reflectance data will have a large impact on the accuracy of c1 .
Figure 5.22: Radiometric calibration: target specification panel.
At the top line of the menu of figure 5.22 the mode of calibration is specified: one or two targets
can be employed by selecting the button ’c1’ or ’c0 & c1, respectively. If a calibration is intended
CHAPTER 5. DESCRIPTION OF MODULES
68
for n > 2 targets, each target has to be specified separately in the ’c1’ mode, which creates a file
’target i.rdn’ (i=1, 2, ..., n) with the name ’target i’ specified by the user. These files contain
the radiance and corresponding digital number spectrum as a 2-column ASCII table, and they are
employed in the batch module cal regress (see chapter 5) to calculate a least squares regression
for the calibration coefficients. Next the target box size and the corresponding ground reflectance
file have to be specified. The button for the file name of target 2 is insensitive, because the single
target mode was selected here. Then the file name for the calibration results should be specified.
The default name is ”test.cal”. However, it is recommended to include the name of the ground
target here. Now the target(s) can be clicked in the zoom window that pops up automatically.
Target 1 has to be clicked with mouse button 1 (mb1, left), target 2 with mouse button 2 (mb2,
center). The zoom window is moved in the main window by pressing mb1 (for target 1) and mb2
(for target 2). Alternatively, the target coordinates (x / y = column / line) can be specified.
In addition to the file ”xxx.cal” the files ”xxx.rdn” (radiance versus digital number), and ”xxx.adj”
(original and adjacency corrected DN’s) are automatically created.
Figure 5.23: Radiometric CALIBRATION module.
The appearance of the inflight calibration module is similar to the SPECTRA module. In the
left part the image is loaded. A zoom window can be created and two contrast stretching options
(Gaussian and histogram equalization) are available. In the right part two windows are provided
to display the c1 spectrum and the box-averaged target DN spectrum. The ymin / ymax widgets
allow the user to scale the graphical display. The parameters visibility and adjacency range can be
varied and their influence on the calibration curve can be studied.
CHAPTER 5. DESCRIPTION OF MODULES
5.3.10
69
Shadow removal panels
The interactive session of the de-shadowing method enables the setting of three parameters that
influence the results, compare Figures 5.24, 5.25:
1. a threshold ΦT for the unscaled shadow function Φ = PhiU to define the core size of the
shadow regions, see chapter 10.5.5 for details.
2. the maximum range Φmax for re-scaling the unscaled shadow function Φ = PhiU into the
(0,1) interval of the scaled shadow function.
3. the last parameter sets the minimum value of the scaled shadow function Φ∗ = PhiS, typically
in the range PhiS=0.02 - 0.10, i.e., the darkest shadow pixels of the scene are treated as being
illuminated with a fraction PhiS of the direct solar irradiance.
Figure 5.24: Normalized histogram of unscaled shadow function.
The first two parameters are most important. The last parameter is not very critical, and a default
value in the range PhiS=0.04 - 0.08 covers most cases of interest.
The linear type of re-scaling of PhiU is recommened. The ”exponential” option exaggerates the
de-shadowing results, but it can be used to enhance the trends for a quick visual inspection.
When pressing the button ”Run Interactive De-Shadowing”, a reduced size image of the original
scene, the shadow mask, and the de-shadowed image will pop up with the histogram of PhiU containing the threshold for core areas (point 1 of Fig. 5.25), the range of re-scaling of PhiU (point
2), and the current value for PhiS (point 3). Now these three parameters can be modified, and
the results will again be shown as the corresponding quicklook image and histogram. When good
results have been obtained the parameters can be saved and the final image processing can take
place.
Figure 5.26 presents an example with two iterations. Results for iteration 1 contain too many
shadow pixels (black areas in the central section of the image), therefore the threshold = -0.15
was decreased to -0.38 (parameter 1 of Fig. 5.25). After de-shadowing, most areas in the shadow
mask were overcorrected in iteration 1, therefore the maximum range = 0.40 was decreased to
0.19 (parameter 2 of Fig. 5.25, see diagonal line from lower left to upper right in histogram of Fig.
5.26). The shadow mask for iteration 2 is appropriate, and no overcorrection effects can be observed.
Note: when leaving the panel of Fig. 5.25 it is possible to edit the cloud shadow map before
continuing the scene processing, using any available image processing software. Then the edited
CHAPTER 5. DESCRIPTION OF MODULES
70
Figure 5.25: Panel to define the parameters for interactive de-shadowing.
map is employed for the processing. This provides some flexibility because it is difficult to calculate
a satisfactory shadow map in all cases.
CHAPTER 5. DESCRIPTION OF MODULES
71
Figure 5.26: Quicklook of de-shadowing results.
Top left: histogram of PhiU (threshold=-0.15, range=0.40), iteration 1. Top right: histogram of
PhiU (threshold= -0.38, range=0.19), iteration 2. Center: results for iteration 1, left-to-right:
original, shadow mask, de-shadowed image. Bottom: results for iteration 2.
CHAPTER 5. DESCRIPTION OF MODULES
5.3.11
72
Panels for Image Processing
When pressing the button ”IMAGE PROCESSING” in one of the main panel (figure 5.17) some
additional panels will pop up. First, the processing options are to be selected (see figure 5.27).
Figure 5.27: Image processing options. Right panel appears if a cirrus band exists.
Options that are not allowed for a specific sensor will appear insensitive. If the haze removal option
is selected in combination with ”Variable Visibility” the visibility index (proportional to total optical thickness) map is coded with the values 0-182. The value visindex=0 corresponds to visibility
190 km, each integer step of 1 corresponds to an AOT increase of 0.006. The array serves as a
fast method of addressing the radiative transfer quantities (transmittance, path radiance etc) in
case of a spatially varying visibility, i.e., in combination with the DDV algorithm. IF the ”Haze or
Sunglint Removal” button is selected the next panel will ask for haze removal over land (option 1),
haze or sunglint removal over water (option 2), or haze removal over land and water (option 3).
In case of thermal bands, an emissivity selection panel will appear:
Figure 5.28: Emissivity selection panel.
CHAPTER 5. DESCRIPTION OF MODULES
73
The first two options are available for instruments with only a single thermal band, the NEM and
ISAC options require multiple thermal bands and are not shown if there are less than 5 thermal
bands. The surface classes (water, vegetation, soil etc) are calculated on-the-fly employing the
surface reflectance spectra from the reflective bands.
Figure 5.29 shows the panel with the two options for haze over land processing as explained in
chapter 10.5.2.
Figure 5.29: Options for haze processing.
The panel of figure 5.30 pops up when the spatially varying visibility option was selected and if the
sensor has a 2.2 µm (or 1.6 µm) band (or at least a red and NIR band) required for the automatic
masking of the dark reference pixels, compare chapter 10.4.2.
Figure 5.30: Reflectance ratio panel for dark reference pixels.
CHAPTER 5. DESCRIPTION OF MODULES
74
The panel of figure 5.31 pops up for rugged terrain and contains the input parameters to BRDF
correction as discussed in chapter 2.2.
Figure 5.31: BRDF panel.
Figures 5.32 and 5.33 are associated with the value added products as described in chapter 7.
This value added file contains up to 10 channels if the sensor has thermal bands. In case of a flat
terrain, the air temperature has to be specified. For a rugged terrain, air temperature at some base
elevation and the air temperature gradient as well as water vapor have to be defined.
If the value added option is selected another panel pops up (Figure 5.34). It contains parameters
for the leaf area index (LAI model) and FPAR model as described in chapter 7.
Finally, a job status window indicates the processing progress.
Note:
The job status window of ATCOR shows the percentage of processed image data and the estimated
remaining time. The time estimate is based on the processing time for the current band. The time
per band increases for channels in atmospheric water vapor regions, it decreases in regions where
interpolation is applied, e.g., around 1400 nm. However, the time also depends on other factors
such as the overall CPU load in case of multi-user machines, or the traffic on net-worked machines.
Accordingly, the estimate for the remaining time is not always continuously decreasing, but may
increase sometimes.
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.32: Value added panel for a flat terrain.
Figure 5.33: Value added panel for a rugged terrain.
75
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.34: LAI / FPAR panel
Figure 5.35: Job status window.
76
CHAPTER 5. DESCRIPTION OF MODULES
5.3.12
77
Start ATCOR Process (Tiled / from ∗.inn)
This is a way to start a tiled process of ATCOR from within the ATCOR GUI (instead of the
standard batch-based process ’atcor tile’).
The process requires that an ∗.inn file has been created before by going through the atcor GUI or
by editing a respective ASCII file manually or by using the routine write atcor inn file.pro provided
in the directory docu of the ATCOR installation.
The below parameters are to be entered for processing:
- Input file name: name of image data cube to be processed. The file must be accompanied by
a valid ∗.inn file for processing.
- Name of output cube to be created.
- Number of tiles in X and Y dimensions - the total number of tiles to process is then X x Y
tiles.
- ATCOR method: selection between flat processing and rugged processing - for the latter the
DEM has to be prepared and ready.
After starting the process using the ’run’ button, the messages are printed to the prompt (or the
console) if available. Error and status messages may also be found in the *.log file during and after
processing.
Figure 5.36: ATCOR Tiled Processing
CHAPTER 5. DESCRIPTION OF MODULES
5.4
78
Menu: Topographic
The ”Topographic” menu contains programs for the calculation of slope/aspect images from a digital elevation model, the skyview factor, and topographic shadow. Furthermore, it supports the
smoothing of DEMs and its related layers.
Figure 5.37: Topographic modules.
5.4.1
Slope/Aspect
Slope and aspect are to be calculated from the DEM before ATCOR is run for rugged terrain. This
menu function as depicted in Fig. 5.38 allows to calculate both layers in one step.
Inputs
Input DEM file The standard DEM file used for atmospheric correction. This DEM should be
in meters
Output file names The names for the output files are entered automatically and can’t be changed
as ATCOR asks these files to be named exactly according to the conventions.
Kernel Size Box Size of the kernel in number of pixels; the slope and aspect is calculated as
gradient of the pixels at the edges of this box - the default value is 3 pixels (i.e. direct
neighbours of center pixel).
DEM resolution This is the pixel size, a default of 30m is assumed. This needs to be entered
manually.
DEM height unit The unit of the values in the DEM, usually a DEM is stored in meters, but
sometimes an integer DEM is stored as dm or cm data in order to preserve disk space.
Outputs
The two files of slope and aspect are created, same size as DEM, integer data.
5.4.2
Skyview Factor
The sky view factor of a DEM is calculated with a ray tracing program and ranges from vsky =
0 to 1, with 1 indicating a full hemispherical view. Data in the sky view file are scaled from 0 to
100% and coded as byte. The sky view factor determines the fraction of the hemispherical diffuse
CHAPTER 5. DESCRIPTION OF MODULES
79
Figure 5.38: Slope/Aspect Calculation panel
sky flux and 1-vsky(x,y) determines the fraction of radiation reflected from surrounding mountains
onto the considered pixel, see chapter 10.1.1. This program is also available in the batch mode, see
chapter 6.2.
Input parameters besides the DEM file are:
• DEM horizontal resolution in meters: the x and y resolution must be the same.
• DEM height unit: supported units are m, dm, and cm.
• Angular resolution (degrees) in azimuth and elevation.
• The undersampling factor of the DEM in pixels. For large DEM’s the skyview processing
may be very time consuming unless an undersampling is chosen here.
Figure 5.39 shows the GUI panel, and figure 5.40 presents a skyview image derived from a DEM
image. An angular azimuth / elevation resolution of 10 degrees / 5 degrees is recommended. For
large images it causes a high execution time which can be reduced by selecting an undersampling
factor of 3 pixels. A high angular resolution is more important than a low undersampling factor.
5.4.3
Shadow Mask
The calculation of the shadow map is done by ATCOR after reading the DEM files. If the shadow
map is computed ”on-the-fly” it is kept in memory, and it is not stored as a separate file. If the user
wants to inspect the DEM shadow map the program ”shadow” has to be started before running
ATCOR. The program accepts float values of the solar zenith and azimuth angles. The output file
name of the DEM shadow map includes the zenith and azimuth angles rounded to integer values.
The DEM shadow map is a binary file where shadow pixels are coded with 0 and sunlit pixels with
1. It includes self shadowing and cast shadow effects. Self shadowing consists of pixels oriented
away from the sun with slopes steeper than the solar elevation angle. The cast shadow calculation
CHAPTER 5. DESCRIPTION OF MODULES
80
Figure 5.39: Panel of SKYVIEW.
is based on a ray tracing algorithm and includes shadow regions caused by higher surrounding
mountains. Figure 5.41 shows the GUI panel.
5.4.4
DEM Smoothing
Smooth a DEM (or any other single-band image) in order to remove artifacts in the atmospherically
corrected imagery. All related DEM-layers are automatically smoothed as well (e.g. slope / aspect
/ skyview). Alternatively, this task coud be done with any image processing software.
Inputs:
Input DEM/file Name Usually a DEM ∗ ele.bsq is selected here; but any other single band
ENVI image or the ∗ ilu.bsq file is also accepted. The routine searches automatically for
related files (i.e. ∗ sky, ∗ slp , and/or ∗ asp) and smoothes them with the same parameters.
Diameter of DEM Filter: Size of filter box in pixels (diameter)
Output Name: Name of Elevation file output (auxiliary layer names will be derived from that)
Outputs:
ENVI file(s) smoothed or filtered by the given factor and method:
Smooth: uses the standard smoothing (i.e., lowpass-filter) in the spatial domain.
CHAPTER 5. DESCRIPTION OF MODULES
81
Figure 5.40: Example of a DEM (left) with the corresponding sky view image (right).
Figure 5.41: Panel of SHADOW.
Median: uses a median filter for data correction, e.g., to remove noise or outliers from the DEM.
ATTENTION: The ∗ ilu file is not smoothed automatically by this routine. If the ilu has already
been calculated before, it should be either removed or be smoothed directly.
Figure 5.42: Panel of DEM smoothing
CHAPTER 5. DESCRIPTION OF MODULES
5.5
82
Menu: Filter
The ”Filter” menu provides spectral filtering of single spectra (reflectance, emissivity, radiance)
provided as ASCII files, spectral filtering of image cubes, and spectral polishing.
Figure 5.43: Filter modules.
5.5.1
Resample a Spectrum
This program serves for the general purpose of resampling. It requires an ASCII file with two
columns as input. The first column is wavelength (nm or µm unit), the second is reflectance, or
emissivity, or something else, e.g. spectral radiance. The reflectance range can be 0 - 1 (the intrinsic
reflectance unit) or the percent range (0 - 100). Figure 5.44 shows the graphical user interface.
The input spectrum is high spectral resolution data. After specifying the first band of the sensor
the resampling is performed for all spectral bands, and the result is written to an output file, again
with two columns (wavelength and resampled spectrum).
Figure 5.44: Resampling of a (reflectance) spectrum.
5.5.2
Spectral Polishing: Statistical Filter
Remove spectral artifacts in high spectral resolution imaging spectroscopy data.
Inputs:
Input file name A hyperspectral image cube, usually the output of atmospheric correction ∗ atm.bsq
Sensor Spectral Response Defines the first band of the sensor response ∗˙rsp. This field may
be left empty - in that case, the wavelength information from the ENVI header is used if the
CHAPTER 5. DESCRIPTION OF MODULES
83
wavelengths tag is properly given. if no wavelength reference is there, a spectrally equidistant
succession of the spetral bands is assumed.
Note: the Savitzky-Golay filter is not wavelength-aware and uses always the assumption of
equidistant, constantly increasing bands.
Number of polishing bands on each side Adjacent bands to be used for calculation on each
side of the target band; e.g. factor 3 uses 7 bands for polishing (3 on each side plus central
band).
Smoothing Factor smoothing applied stand alone or in combination with the derivative filter:
0: no smoothing
1: slight smoothing (filter: 1/4/1)
2: moderate smoothing (filter: 1/2/1)
3: standard smoothing (filter: 1/1/1)
4 and more: standard smoothing with moving average
Polishing Filter Type Four options are available for statistical spectral polishing: Derivative
Filter: all spectral bands of the given window size are taken into account to calculate derivative used to reconstruct the value of the center band.
Neighbour Derivative: all spectral bands except for the center itself are taken into account to
calculate derivative used to reconstruct the value of the center band.
Lowpass Filter: Only the smoothing is performed, no derivatives are calculated.
Savitzky-Golay: Filter to perform a numerical polinomial fit of 4th degree through the selected
total window size.
Output:
A cube containing the spectrally filtered copy of the original image data cube is generated
(compare Paper Earsel, SIG-IS Workshop, Edinburgh, 2011).
Figure 5.45: Statistical spectral polishing.
5.5.3
Spectral Polishing: Radiometric Variation
A module that was originally developed for the airborne version of ATCOR is the spectral polishing.
The algorithm is only intended for hyperspectral imagery.
CHAPTER 5. DESCRIPTION OF MODULES
84
Figure 5.46: Radiometric spectral polishing.
Input to the spectral polishing program is the reflectance cube calculated with ATCOR. It employs the vegetation index (0 < N DV I < 0.33, N DV I = (ρN IR − ρRED )/(ρN IR + ρRED )) to
mask soil pixels. A soil spectrum is a slowly varying function of wavelength, therefore a spectral
smoothing will only remove spikes without disturbing the spectral shape. Then the average reflectance spectrum over all soil pixels is calculated and smoothed with a 5-channel filter except for
the atmospheric water vapor regions where a linear interpolation is performed. The ratio of the
filtered to the original soil spectrum is the spectral polishing function applied to all image pixels. If
”xxx atm.bsq” is the atmospherically corrected input image, then ”xxx atm polish.bsq” is the polished output reflectance cube, and the spectral polishing function is stored in ”xxx atm polish.dat”,
an ASCII file with two columns containing the center wavelength of each channel and the polishing
factor. Figure 5.46 shows the GUI panel.
5.5.4
Spectral Smile Interpolation
For sensors affected by ”spectral smile” the surface reflectance cube is calculated accounting for the
smile shift function in the column (across-track) direction of the detector array. The smile shift is
specified as a 4th-order polynomial function, i.e. the file ”smile poly ord4.dat” in the corresponding
sensor folder, see chapter 4.7. Due to the smile shift the wavelength values of a spectral channel
vary slightly in across-track direction. The ”smile interpolation” function allows the specification
of a common center wavelength for each channel. Then for each channel all pixel reflectances are
interpolated to this new reference wavelength. Since the smile shift between adjacent bands does
not vary significantly, a linear interpolation can be applied. If λj (i) denotes the center wavelength of
band i and column j, and ρj (i) the surface reflectance of a column j pixel, then the new interpolated
reflectance is
(new)
ρj
(i, λref (i)) = ρj (i) +
(λref (i) − λj (i)) (ρj (i + 1) − ρj (i − 1))
λj (i + 1) − λj (i − 1)
(5.1)
where λref (i) is the user-defined reference center wavelength for band i. There are three options
for the reference wavelength grid:
1. use wavelength corresponding to the center of the detector array,
2. use average wavelength over all detector columns (per band),
3. use nominal wavelength specified in the (ENVI) header of the reflectance cube.
CHAPTER 5. DESCRIPTION OF MODULES
85
This tool is available in the interactive mode (main menu, then ”Filter”, then ”Spectral Smile
Interpolation (Image Cube)” and in the batch mode (”smile interp3 batch”, see chapter 6.2).
This routine is used after smile-aware atmospheric correction. I applies a linear interpolation on
the reflectance data in order to bring the spectral bands to a common reference in across track
direction. The inputs are as follows (see Fig. 5.47):
Inputs:
Input Image A hyperspectral image cube, usually the output of atmospheric correction in smile
mode ∗ atm.bsq
Smile polynomial file The file ’smile poly ord4.dat’ as of the sensor definition used for the smileaware atmospheric correction.
Options Three options for the spectral reference wavelength grid to be used for interpolation may
be selected:
center of detector array: The spectral position of the center pixel in across track direction of
the detector is taken as the reference wavelength for each spectral band.
average over all detector columns: For each spectral band, the average of all (smiled) center
wavelengths is calculated and used as the new reference wavelength.
nominal position (ENVI header) the nominal position as provided in the ENVI header file is
taken as the reference.
Output:
A cube containing the spectrally interpolated image data is generated and the ENVI header is
updated (for options 1 and 2).
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.47: Spectral smile interpolation
86
CHAPTER 5. DESCRIPTION OF MODULES
5.6
87
Menu: Simulation
The ”Simulation” menu provides programs for the simulation of at-sensor radiance scenes based
on surface reflectance (or emissivity and temperature) images.
Figure 5.48: Simulation modules menu.
5.6.1
TOA/At-Sensor Radiance Cube
This routine calculates an At-Sensor Radiance Cube from an reflectance image cube. All parameters used for the processing are generated from the ∗.inn file of the input cube. If the function is
called, the cube is opened and the ∗.inn file is read, which results in an at-sensor cube ∗ toarad.bsq
. Note that this routine does not consider adjacency effects and is a simple forward propagation
based on the given parameters and the given standard model.
No specific panel is displayed. The routine asks for the input reflectance image. All other information is taken from the *.inn file. Please make sure that the reflectance image spectral definition
corresponds exactly to the chosen atmospheric library and sensor definition as of the *.inn file.
5.6.2
At-Sensor Apparent Reflectance
This routine calculates an at-sensor apparent reflectance from a calibrated at-sensor radiance image
cube. This routines alculates for each image band the following output:
ρapp = (DN ∗ c1 + c0 ) ∗ π ∗ d2 /(E0 ∗ cos(θ0 ))
where:
DN : stored data values
c1 : gain for conversion of DN to at sensor radiance
c0 : offset for conversion to at sensor radiance
d: relative sun-earth distance (average:d=1)
E0 : solar irradiance, top of atmosphere (NOT at aircraft altitude)
θ0 : solar zenith angle
Inputs:
• input file name
• calibration file name (∗.cal)
• solar radiation file (e0 solar ∗.spc)
• output file name
(5.2)
CHAPTER 5. DESCRIPTION OF MODULES
88
• scale factor (see below)
• date of the year, given exactly as ’day/month’, eg. 26/7 for July, 26th, used for sun-earth
distance calculation
• solar zenith angle (use ’Tools : Solar Zenith and Azimuth’ for its calculation)
Output:
A cube containing the scaled apparent reflectance in [%] is stored. The data format is driven by
the scaling factor as follows:
• scale < 10 : byte
• scale >= 10 : integer
• scale >= 500: unsigned integer
• scale <= 1. : floating point (effective value, unit: [%]) ( wavelength reference and FWHM
are taken from the file e0 solar ∗.spc)
Figure 5.49: Apparent Reflectance Calculation
5.6.3
Resample Image Cube
This routine allows to simulate a multispectral image from imaging spectroscopy data. A detailed
description of this routine is given in chapter 8.
CHAPTER 5. DESCRIPTION OF MODULES
5.7
89
Menu: Tools
The ”Tools” menu contains contains a collection of useful routines such as the calculation of the
solar zenith and azimuth angles, spectral classification, nadir normalization for wide field-of-view
imagery, adding of a synthetic blue channel for multispectral sensors with a blue band (e.g. SPOT)
which is done for the atmospherically corrected surface reflectance image, spectral calibration, conversion of the monochromatic atmospheric database from one to another solar irradiance spectrum,
and BIL to BSQ conversion.
Figure 5.50: The tools menu.
5.7.1
Solar Zenith and Azimuth
The routine SOLAR GEOMETRY is used to calculate the zenith and azimuth angle for the image
location and acquisition time. All explanations concerning the definition of angles are included in
the panel (Fig. 5.51).
Figure 5.51: Calculation of sun angles.
CHAPTER 5. DESCRIPTION OF MODULES
5.7.2
90
SPECL: Spectral Reflectance Classification
SPECL is a spectral classification based on reflectance data. The program compares each pixel
spectrum to a list of template spectra. It is assigned to the class with the best match or put into
the class ”undefined” with class label 0.
Figures 5.52 and 5.53 show the panel of the SPECL program and a sample output.
Figure 5.52: SPECL: spectral classification of reflectance cube.
Figure 5.53: Example of classification with SPECL.
Left: true color image of Landsat TM, right: result of classification.
5.7.3
SPECL for User Defined Sensors
This function is the same as described above in Section 5.7.2 and Figure 5.53. The only difference
being that the available sensors are the ones defined in the ’sensor’ directory of the ATCOR
installation, i.e., the self-defined sensors.
5.7.4
Nadir normalization (Wide FOV Imagery)
This module (NADIR REFL) performs an empirical BRDF correction by normalizing the acrosstrack radiance gradients to the nadir brightness value (see chapters 2.2, 10.5.1). Figure 5.54 shows
the corresponding GUI panel.
CHAPTER 5. DESCRIPTION OF MODULES
91
The nadir normalization was originally implemented for the airborne version of ATCOR and requires a minimum field-of-view of 20◦ . Therefore, it might also be of interest for some of the
supported satellite sensors, e.g. IRS-1C WiFS or MERIS.
Figure 5.54: Nadir normalization.
5.7.5
Quick Topographic (no atm.) Correction
The quick topographic correction routine (TOPOCOR) tries to eliminate the slope/aspect topographic effects and neglects the atmospheric influence. The program runs very fast and the output
image contains the modified digital numbers. Processing with TOPOCOR can be done with or
without display of images. The DEM slope and aspect files have to be specified on a separate panel
that pops up after the input image has been specified. The topographic correction implemented
here multiplies the DN value with a factor f that depends on the local solar zenith angle β and a
weighting coefficient w. The wavelength-depending weighting w is based on a typical value of the
ratio of the direct to diffuse solar flux on the ground.
f = 1 − (1 − cosΘS /cosβ)w
f = cosΘS /cosβ
if
if
λ < 1.1µm
λ ≥ 1.1µm
(5.3)
(5.4)
ΘS is the solar zenith angle of the scene. For λ ≥ 1.1µm the diffuse flux is neglected, i.e., w=1.
The factor f is 1 for a flat terrain and some bounds were employed to prevent overcorrection. So
for each pixel the new digital number is calculated as
DN (new) = DN ∗ f
(5.5)
The method was compared with the standard Minnaert correction (eq. 5.6) and was superior in
most cases. Figure 5.55 shows the GUI panel.
f ={
cosΘS log(cosΘS /cosβ)
}
cosβ
(5.6)
CHAPTER 5. DESCRIPTION OF MODULES
92
Figure 5.55: Topographic correction only, no atmospheric correction.
5.7.6
Add a Blue Spectral Channel
This routine (MAKEBLUE) adds a blue spectral channel for multispectral imagery not containing
a blue band. The band is calculated from empirical relationships from the green, red, and NIR
bands which ought to be present. The routine simply asks for an input multispectral image to be
processed.
NOTE: the input image should have at least 3 bands and the first three bands are assumed to be
the triple GREEN/RED/NIR.
5.7.7
Spectral Smile Detection
This routine uses sharp atmospheric absorption features and Fraunhofer lines for inflight smile (i.e.,
spectral across-track non-uniformity) detection. The calculation is done by correlation analysis of
a number of spectral bands in the vicinity of selected absorption features. The outputs may be
used for smile-aware atmospheric correction.
Initially, the smile characterization for each spectrometer channel is derived from laboratory measurements. From such data, the wavelength shift with respect to the center pixel of the detector
array can be parametrized using a 4th order polynomial fit. However, in case of instrument changes
during the mission, a spectral re-calibration might be necessary from the image data or from onboard calibration facilities using well-defined absorption features. Onboard spectral calibration
devices such as interference or rare earth filters would be well suited for this purpose. However,
such devices are often not available in sensor systems. Therefore, atmospheric gas absorption features or solar Fraunhofer lines have to be taken as a reference from the imagery itself. Its major
steps are:
1. A calibrated image is averaged in along track direction, leading to a signature image of the
size of the detector array.
2. The surface reflectance is calculated (atmospheric correction) and smoothed.
CHAPTER 5. DESCRIPTION OF MODULES
93
3. The spectral bands within the spectral matching range are selected.
4. Spectral shifts with intervals between 0.01-0.05 nm are calculated and applied to the selected
spectral band response functions.
5. An appropriate pre-calculated fine-spectral resolution atmospheric LUT is selected which
serves for the calculation of at-sensor radiance values for the series of spectrally shifted response functions using the surface reflectance spectrum from step (2).
6. The derived spectral signatures are correlated to the observed column-averaged signal in the
image, such that the best fitting spectral shift ∆λj = ∆j can be found for each image column
j, i.e., the ∆j with the highest Pearson’s correlation coefficient is selected. This is equivalent
to minimizing the merit function
χ2 (∆j ) =
λk X
+5nm
[LI (j, k) − LR (λk + ∆j , k)]2 ,
(5.7)
∆j =λk −5nm
where LI (j, k) is the average at-sensor radiance of the image for column j and channel k, and
LR (λk + ∆j , k) is the corresponding reference radiance for a wavelength shift ∆j within a 5
nm interval around λk .
7. A 4th order polynomial is fitted through the calculated spectral points and the respective
polynomial parameters of eq. 4.1 are stored.
8. The polynomial parameters are interpolated and optionally extrapolated to all other bands
within the same detector or spectrometer unit. Optionally, the polynomial coefficients can
be set to zero in atmospheric absorption regions to expedite the processing.
Once the coefficients have been determined, they are converted into the required file format and are
placed in the respective sensor folder for a subsequent fully automatic radiometric and atmospheric
processing.
Fig. 5.56 shows the panel of the smile detection module. The input files (scene, high-resolution
atmospheric database, sensor spectral response) and the output file has to be specified in the upper
part of the panel. Then the ’smile detection resolution’, ’search range’, and ’band range’ can be
specified. Next are parameters pertaining to the scene (visibility, solar zenith angle, and ground
elevation. Up to 12 atmospheric or Fraunhofer feature wavelengths can be selected. The ’Interpolation Type’ refers to the interpolation of the smile polynomial between feature wavelengths.
Extrapolation can be done by extrapolating the trend, repeating the values of the last band calculated or by setting the polynomial to zero at the borders of the spectral range of the instrument.
The module will perform the calculation when pressing the ”Run’ button. Results of the smile
detection can be viewed with ’Plot Smile’. Here the relative smile curves with respect to the center
of the detector array can be plotted or the absolute wavelength smile curves.
Outputs:
An ASCII-file which may be used as smile description file in the respective sensor directory. Note
that this file should be named smile poly ord4.dat in order to be automatically recognized by
ATCOR.
As a side output, an IDL save dump (∗.sav) is written in parallel which contains all used parameters
and the effectively calculated smile results.
CHAPTER 5. DESCRIPTION OF MODULES
94
Figure 5.56: Spectral smile detection
5.7.8
Spectral Calibration (Atm. Absorption Features)
The program (SPECTRAL CAL) is only intended for hyperspectral sensors and employs atmospheric absorption features to detect and remove possible wavelength calibration errors (see chapter
2.3). For this purpose, a certain number of target spectra have to be selected in the SPECTRA
module.
Input to the spectral calibration module are the DN spectra of selected fields saved as ASCII files in
the SPECTRA module by pressing the button ”Save last spectrum”. The files should be numbered
consecutively, starting with a name such as ”location target1”, without extension. The next target
has to be named ”location target2” etc. For each target field three files will generated, for example:
• ”location target1.dat” : contains surface reflectance spectrum,
• ”location target1.txt” : contains target coordinates, and processing parameters (visibility,
water vapor column, etc.),
• ”location target1 dn1.dat” : contains the DN spectrum.
For a given location (scene) up to 9 targets can be extracted and used for the spectral calibration.
The geometry, scene visibility and average water vapor content of the targets enter as parameters to
the spectral calibration, see Fig. 5.57. The water vapor content has to be averaged from the values
found in the ”location target*.txt” files. The first target DN file has to be selected by the user,
the remaining target files are automatically found provided the nomenclature with a consecutive
numbering is applied. The result of the spectral calibration are files with the spectral shifts per
spectrometer and the new center wavelengths of all channels. The spectral bandwidth of channels
is not modified.
CHAPTER 5. DESCRIPTION OF MODULES
95
The DN spectra will be employed in an optimization procedure that minimizes the spikes of the
derived surface reflectance spectra in the atmospheric absorption regions.
The first target DN file has to be entered at the top left button of the GUI panel (Figure 5.57).
The other target files are automatically searched and employed if the nomenclature of chapter 2.3 is
employed. Further input data are the sensor definition, the range of bands per spectrometer, solar
geometry and atmospheric parameters. Output is a file with the spectral channel center wavelength
shifts per spectrometer, and a new wavelength file containing the updated wavelengths for each
channel.
Figure 5.57: SPECTRAL CAL.: spectral calibration
The results of the spectral shift are summarized in a file ”spectral calibration results*.txt” where
the wavelength shift is listed for each spectrometer and each target. The final shift is taken as
the average of all target wavelength shifts. In addition, a new wavelength file ”sensor new.wvl”
is created containing the channel center wavelengths and the FWHMs (bandwidth as full width
at half maximum). A copy of the original radiometric calibration file (e.g., ”xxx.cal”) is provided
for convenience (e.g., ”xxx new.cal”) which contains the original radiometric calibration coefficients
and the updated channel center wavelengths.
In case of originally non-Gaussian filter curves, the output FWHM values of ”sensor new.wvl” represent the equivalent Gaussian FWHM values, even though the spectral re-calibration is based on
the original (non-Gaussian) filter curves. The corresponding sensor with the new spectral calibration has to be added to the list of existing sensors (see chapter 4.5) to process imagery with the
updated spectral calibration. In case of non-Gaussion filter curves, the original channel response
files (”band*.rsp”) should be copied to the new sensor directory applying the appropriate wavelength shifts. For sensors with Gaussian filter curves the ’gauss rsp” module (see chapter 5) can
be applied to the ”sensor new.wvl” file to generate the corresponding ”band*.rsp” files. Note that
a change of the spectral calibration usually requires a radiometric re-calibration.
CHAPTER 5. DESCRIPTION OF MODULES
5.7.9
96
Calibration Coefficients with Regression
This routine employs the ”*.rdn” files obtained during the single-target calibration (the ”c1 option”
of ATCOR’s calibration module to create a calibration file by rlinear regression.
Figure 5.58: CAL REGRESS.: radiometric calibration with more than one target
So for n > 2 the single-target calibration is to be performed n times and the resulting ”*.rdn” files
(radiance versus digital number) are offered as input to the ”cal regress” program.
Inputs:
Number of calibration targets: A maximum of 9 calibration targets may be selected. The files
*.rdn should having been calculated beforehand and the need to be calculated consecutively,
e.g., calib1.rdn, calib2.rdn, ...
First *.rdn file: Name of the first *.rdn file of the series to be used for regression
Output Name” Name of the calibration output to be created.
Output:
The output of this program is an ASCII file ”name.cal” with three columns (center wavelength,
c0 , c1 ) where ”name” is specified by the user.
Note: If several calibration targets are employed, care should be taken to select targets without
spectral intersections, since calibration values at intersection bands are not reliable. If intersections
of spectra cannot be avoided, a larger number of spectra should be used, if possible, to increase the
reliability of the calibration.
CHAPTER 5. DESCRIPTION OF MODULES
5.7.10
97
Convert High Res. Database (New Solar Irradiance)
The standard solar irradiance curve used with ATCOR is the Fontenla database (2011). However,
there’s some uncertainty about the solar irradiance and people may want to use ATCOR with
a different solar reference function. This module (CONVERT DB3) converts the complete high
resolution atmospheric database from the current definition to a new irradiance function. Normally,
the standard database is converted (this function does not apply to the thermal IR), but also the
specific CHRIS database may be selected. In the panel (see Fig. 5.59), the two databases may be
selected on the basis of the directory (f1) and the new reference function e0 solar∗.dat.
Figure 5.59: Convert monochromanic database to new solar reference function
5.7.11
Convert .atm for another Irradiance Spectrum
The conversion as described in module 5.7.10 can be applied to a sensor-specific atmospheric library
of a self-defined sensor using this function. In the panel as of Fig. 5.60, the sensor has first to
be entered and the new solar function e0 solar∗.dat is to be selected before the conversion may be
applied.
CHAPTER 5. DESCRIPTION OF MODULES
Figure 5.60: Convert atmlib to new solar reference function
98
CHAPTER 5. DESCRIPTION OF MODULES
5.8
99
Menu: Help
Finally, the ”Help” menu allows browsing of the ATCOR user manual, provides a linke to the web
resources, and displays license information.
Figure 5.61: The help menu.
5.8.1
Help Options
The options of the help menu are listet below:
Browse Manual Opens this manual in the default PDF display application of your machine.
Web Resources Opens the html document atcor3 webresources.htm in the systems default applications for viewing HTML-documents.
About Provides basic information about the copyright and also displays the build-number of the
software (please provide the build-number for debugging purposes in case the ATCOR support
is contacted).
Your License Provides information about the licensed features in your license key and also displays which license key is currently active.
Chapter 6
Batch Processing Reference
For most ATCOR modules a convenient graphical user interface is available, but batch jobs can
also be submitted. A detailed discussion of the interactive panel-driven modules is given in chapter
5.
6.1
Using the batch mode
ATCOR can process scenes in the batch mode. For large scenes the tiling option is also available in
batch mode which splits a big scene into a number of smaller sub-scenes, processes the sub-scenes,
and finally merges them into one file. A prerequite for the tiling is that enough IDL memory is
available to keep one image channel and the sub-scene channel in memory. Also note that a full
IDL developer license is required in order to make use of the batch commands on the IDL prompt.
The batch mode can be accessed after the processing parameters have been specified in the interactive graphical user interface (GUI) panel, i.e., after the SPECTRA module has been accessed or
after one of the image processing options has been selected. Thus, the GUI panel creates an ’*.inn’
file containing all input parameters.
The batch mode can be started after quitting the interactive session, using the same IDL window.
It can also be started in a new IDL session after typing ’atcor’ on the IDL command line. Then
continue with:
>atcor2 batch, input=’/data1/examples/example image.bsq’
>atcor3 batch, input=’/data1/examples/example image.bsq’
(case of flat terrain) or
(case of rugged terrain)
At this stage, all required input parameters are already available in the ’*.inn’ file, in this specific
case ’example image.inn’.
The submitted job is a ’quasi batch’ job, the corresponding IDL window is used for error and
status messages and it may not be closed during the run time of the job. A log file is created
during processing, e.g. ’example image atm.log’, which contains information about the job status.
It contains three message levels (I=Info, W=Warning, E=Error) followed by a two digit number
(between 0 and 99) and a space, e.g. ’W19 ’, followed by the appropriate information. These three
message levels can easily be parsed by a separate user program if desired. Other information in the
log file is marked with the hashmark symbol in the first column.
100
CHAPTER 6. BATCH PROCESSING REFERENCE
101
In the tiling mode the user has to specify the number of tiles in x=column direction (ntx) and in
y=line direction (nty), e.g.,
>atcor2 tile, input=’/data1/examples/example image.bsq’, ntx=3, nty=2
In this case the image is split into 3*2=6 tiles, each tile is processed separately, finally all tiles
are merged into one output file, and the sub-scenes are deleted. The maximum size of each tile
depends on the available memory for a specific machine because ATCOR performs most calculations in memory loading one or two complete bands of the scene. A typical tile size for modern
machines is 3000*3000 pixels = 9 Mpixels to 5000*5000 pixels = 25 Mpixels. The user has to try
and find out the appropiate tile size. As an example, with a 9 Mpixel tile size and a 30 Mpixel
scene the image has to be split into 4 sub-scenes. Assuming that the number of image columns and
lines is approximately the same, one would choose the keywords ’ntx=2, nty=2’ in this example.
Of course, processing of much smaller tiles is also possible, e.g., ’ntx=20, nty=10’, but this is not
recommended because of potential image border effects, i.e., larger visibility differences for the
small tiles might lead to seams at the tile borders.
The TIFF input data format is supported, however, channels in the TIFF file must have the increasing band order, and the maximum number of bands should be less than 10. If all channels are
in one input TIFF file (example: ”image.tif”), the output TIFF after atmospheric correction will
also hold all channels (example: ”image atm.tif”).
An IDL routine called ’write atcor3 inn file’ is available to users who want to generate the ’*.inn’
file without the ATCOR GUI.
Note: :
On the IDL command line, the command ’atcor’ has to be typed first to load the ’atcor.sav’ file.
Then the ’atcor2 tile’ or ’atcor3 tile’ commands will execute the tile processing. A simple trick
can be used to start the ’atcor tile’ programs directly on the IDL command line without having to
type ’atcor’ first: just copy the ’atcor.sav’ file to ’atcor2 tile.sav’ and ’atcor3 tile.sav’. The same
can be done for ’atcor2 batch.sav’ and ’atcor3 batch.sav’. For the Linux/Unix operation systems
a symbolic link is sufficient, e.g., ln -s atcor.sav atcor2 batch.sav.
For Linux/Unix users with a full IDL license a batch job can be started directly from the shell,
e.g.: idl -e ”atcor2 batch, input=’/export/data/data7/demo data/tm essen.bsq’ ”
6.2
Batch modules, keyword-driven modules
Most of the modules are available in both modes (interactive and batch). If the ’atcor.sav’ file is
copied to ’atcor2 batch.sav’ and ’atcor3 batch.sav’, a batch job can be started immediately from
the IDL command line, otherwise ’atcor’ has to be typed first. Hereafter, a description of the batch
modules and keyword-driven modules is given.
In order to make the batch options available, you first have to type "atcor"on the IDL command
line, then the ATCOR GUI selection panel pops up. (alternatively, you may use the command
restore,"atcor.sav"). Disregard this panel and continue on the IDL command line with the
name of the batch job module where all the input parameters have to be specified via key words.
Current batch programs are:
CHAPTER 6. BATCH PROCESSING REFERENCE
102
• slopasp batch, input=filename, [ pixelsize=10.0, kernel=3, dem unit=0 ]
The ’filename’ should have the last four characters as ” ele” and the extension ”.bsq”. Two
output files (slope and aspect) are generated from the elevation file, e.g.,
”example DEM25m slp.bsq” and ”example DEM25m asp.bsq”. The values are coded in degrees. The keyword pixelsize is not required if this information is included in the map info
of the ENVI header. The keywords kernel and dem unit can be omitted if the default values
kernel=3, and dem unit=0 are used. The unit of pixelsize is ’meter’. For the elevation height
unit three options exist: dem unit=0 : height unit is ’meters’, =1 for ’dm’, =2 for ’cm’.
Note: Before running ATCOR with a DEM, please check the results of the slope image. We
often encounter severe horizontal and vertical striping in the slope image in case of low quality
DEMs or if coarse DEMs of 25 m have to be resampled to say 5 m. Additional appropriate
filtering is required in these cases! A simple way might be to try a larger kernel size, e.g.,
kernel=5 or kernel=7. A simple check on the derived DEM solar illumination file is also
performed at the start of ATCOR, see the discussion below.
A TIFF input elevation file is converted into the corresponding ENVI elevation file.
• skyview batch, input=filename, pixelsize=10.0, [dem unit=0, unders=unders, azi inc=azi inc,
ele inc=ele inc]
’filename’ is the full file name including the path, ’filename’ should have the last four characters as ” ele” and the extension ”.bsq” to indicate a digital elevation file and to enable
an automatic processing, e.g., ”example DEM25m ele.bsq”. ’pixelsize’ is specified in meters,
’dem unit’ is the integer code for the DEM height unit (0 represents [m], 1 means [dm], 2
means [cm]). The option dem unit=0 is default and can be omitted. The keyword ”unders”
specifies the undersampling factor (in pixels) to reduce the execution time for very large files.
The default angular azimuth resolution is azi inc=10 degrees and the default elevation increment is ele inc=30 degrees. However, the recommended resolution is 10 degrees for azimuth
and 5 degrees for elevation. In case of large files, an undersampling factor > 1 can be specified
to reduce the execution time. Usually an undersampling factor of 3 is sufficient. A high angular resolution is more important than a low undersampling factor. The output file replaces
the ending ” ele” with the ending ” sky”, e.g., ”example DEM25m sky.bsq”.
A TIFF input elevation file is converted into the corresponding ENVI elevation file.
• shadow batch, input=filename, pixelsize=10.0, solze=30.5, solaz=160.8, dem unit=0, The
keywords have the same meaning as for skyview batch, ’solze’ is the solar zenith angle [degr.],
and ’solaz’ is the solar azimuth angle [degr.]. In particular, ’filename’ should have the last
four characters as ” ele” and the ”.bsq” extension. The output file replaces the ending ” ele”
with the ending ” shd” e.g., ”example DEM25m zen31 azi161 shd.bsq”. The rounded zenith
and azimuth angles will be included in the ”*shd” file name. Note: The shadow and skyview
calculations can be omitted in gently undulated terrain. Example: for maximum slopes of
25◦ and a solar zenith angle of 40◦ no DEM shadow is possible. Also, the local trigonometric
sky view factor, employed if the ” sky.bsq” file is missing, is sufficiently accurate, compare
figure 10.3.
A TIFF input elevation file is converted into the corresponding ENVI elevation file.
• atcor2 batch, input=filename [, output=file, vis=vis, tiff2envi=tiff2envi] or
atcor2 tile, input=filename, ntx=3, nty=2 [, output=file, vis=vis, tiff2envi=tiff2envi]
The ”2” in atcor2 batch means the code for flat terrain, i.e. no DEM is employed. The ’filename’ must be fully qualified, i.e. it includes the path, e.g., ”/data2/project1/image1.bsq”.
The file should have the band sequential (BSQ) file structure. A corresponding ”*.inn” file,
CHAPTER 6. BATCH PROCESSING REFERENCE
103
e.g., ”/data2/project1/image1.ini” must be available that contains all processing parameters.
This file will be generated during the interactive session. It may be also be created by the
user, e.g. employing the program ”write atcor3 inn file.pro” that is available on request. The
default output file name without the output keyword specification is the input name with an
” atm.bsq” appended, e.g., ”/data2/project1/image1 atm.bsq”.
The keyword output can be used to specify the full output name, or only the output path,
the latter option is recommended. In that case, all output files are written to the specified
output directory, and the reflectance output file name is the name of the input file with
” atm.bsq” appended. Example: output=”/data4/project1/” then the output reflectance file
will be ”/data4/project1/image1 atm.bsq”.
The corresponding tile program atcor2 tile in this example is called to split the image into 3
sub-images in x direction, and 2 in y direction, compare chapter 5.3.12.
The optional keyword ’vis’ can be used to overwrite the visibility value in the ”.inn” file. For
a constant visibility per scene (npref=0 in the ”*.inn” file), the input ’vis’ value is the start
value that will be iterated as described in chapter 10.4.1. In case of a variable scene visibility
(npref=1) the ’vis’ parameter is ignored if the scene contains enough dark reference pixels. If
not, the program switches to the constant visibility mode and ’vis’ is used as a start value.
An optional keyword output can be used to define the output directory and name of the
output reflectance file. If the keyword specifies only the output path, which is recommended,
then all output files are written to the specified output directory, and the reflectance output
file name is the name of the input file with ” atm.bsq” appended.
The optional keyword ’vis’ can be used to overwrite the visibility value in the ”.inn” file. For
a constant visibility per scene (npref=0 in the ”*.inn” file), the input ’vis’ value is the start
value that will be iterated as described in chapter 10.4.1. In case of a variable scene visibility
(npref=1) the ’vis’ parameter is ignored if the scene contains enough dark reference pixels. If
not, the program switches to the constant visibility mode and ’vis’ is used as a start value.
A negative vis value means the value abs(vis) is used for processing even if it causes a large
percentage of negative reflectance pixels.
The optional keyword tiff2envi can be used if the input file has the TIFF format. tiff2envi=1
produces an automatic conversion of the input TIFF file (e.g., ”image1.tif”) into the corresponding ENVI file (e.g., ”image1 envi.bsq”). This file is used as a temporary input file to
ATCOR and it will be automatically deleted when the ATCOR run is finished. Two output
surface reflectance files will be generated if tiff2envi=1, an ENVI file (”image1 envi atm.bsq”)
and a TIFF file (”image1 atm.tif”). The ENVI output is needed if the spectral classification
(SPECL) module is run, otherwise it may be deleted by the user.
The default for a TIFF input file is tiff2envi=0, i.e., the ENVI file conversion is switched off
and no intermediate files are created. This will save disk space and some file conversion time.
However, if the ”image1.ini” file specifies the de-hazing or de-shadowing option, then tiff2envi
is reset to 1 to enable the creation of of the needed additional intermediate ENVI files. For
non-TIFF files, the tiff2envi keyword is ignored.
If each input band is in a separate TIFF file, the files should be labeled consecutively, e.g.,
”image band1.tif”, ”image band2.tif”, etc. The output of ATCOR will be the corresponding
CHAPTER 6. BATCH PROCESSING REFERENCE
104
surface reflectance files ”image band1 atm.tif”, ”image band2 atm.tif”, etc.
A keyword ’tiff2envi’ can be specified as a parameter of the batch job. If not specified, the
default is ’tiff2envi=0’ which means no intermediate disk files will be created, only the final
”* atm.tif”. With the keyword ’tiff2envi=1’ the temporary file ”image envi.bsq” is automatically created and it contains the input data in the ENVI bsq (band sequential) format. The
standard output name of the atmospheric correction is ”image envi atm.bsq”, and of course
”image atm.tif”. The ”image envi.bsq” is deleted after processing, but ”image envi atm.bsq”
is kept, because it is required for a run of the spectral classification (SPECL module). The
user has to delete this file manually if the SPECL module is not employed. The setting
’tiff2envi=0’ is automatically replaced with ’tiff2envi=1’ if the ”.inn” file specifies the dehazing or de-shadowing option, because these require additional disk files. In case of tiling
and a TIFF input file the program automatically switches to ’tiff2envi=1’ because the intermediate tile images must have the ENVI bsq format.
• atcor3 batch, input=filename [, output=file, vis=vis, tiff2envi=tiff2envi] or
atcor3 tile, input=filename, ntx=3, nty=2 [, output=file, vis=vis, tiff2envi=tiff2envi]
The ”3” in atcor3 batch means the code for rugged terrain, i.e. a DEM is employed as well as
other DEM related files, e.g., slope, aspect, skyview. Otherwise, the same explanations hold
as for the ”flat” terrain ATCOR.
The corresponding tile program atcor3 tile in this example is called to split the image into 3
sub-images in x direction, and 2 in y direction, compare chapter 5.3.12. The keywords output
and vis are described in atcor2 batch above.
• Note: optional keywords for atcor2 batch, atcor3 batch, atcor2 tile, atcor3 tile.
There are four keywords concerning spectral interpolation to overwrite the interpolation settings in file ”preference parameters.dat”:
– i725=-1: no interpolation for 725/820 nm channels, i725=1: interpolation.
– i760=-1: no interpolation for 760 nm channels, i760=1: interpolation.
– i940=-1: no interpolation for 940 nm channels, i940=1: interpolation.
– i1400=-1: no interpolation for 1400/1900 nm channels, i1400=1: interpolation.
• toarad, input=filename, [ pixelsize=pixelsize, sz=solar zenith, atmfile=atmfile, elev=elevation,
vis=visibility, adjrange=adjrange, scalef=scalef ]
The keywords in brackets are optional, the meaning of all keywords is described in chapter
8. Information on all missing keywords is taken from the corresponding ”.inn” file. If the
keyword elev is missing and the corresponding ”*.inn” file contains the DEM files (elevation, slope, aspect) then the simulation is performed for a rugged terrain, otherwise for a flat
terrain, compare chapter 8.
• cal regress, ntargets=4, outfile=’regression4’
This program uses the ”*.rdn” files to calculate a regression for the c0, c1 radiometric calibration, see chapters 2.4 and 5.3.9. The above example is for the case of n=4 targets, and the
output file will be ”regression4.cal” in the directory of the ”*.rdn” files which are prompted
with a dialog pickfile panel. A graphical user interface for this program is available in the
”Tools” pull-down menu of ATCOR labeled ”Calibration Coefficients with Regression”.
• makeblue, input=filename
The program computes a synthetic blue channel for sensors without a blue spectral band. If
CHAPTER 6. BATCH PROCESSING REFERENCE
105
it is started from the the interactive panel (’Tools’) a dialog pickfile box pops up prompting
for the input file name. If ’makeblue’ is started on the IDL command line, the input file name
must be fully qualified, i.e., the path has to be included. The input has to be atmospherically
corrected data, i.e., an ”* atm.bsq” file, where the blue band is missing, e.g. imagery of
SPOT, IRS-1D, DMC. The output file contains a synthetic blue band as the first image
channel calculated from the green, red, and NIR bands on a pixel by pixel basis. The output
file name is ”* blue atm.bsq”. This product is a useful supplement to be able to create a true
color image of the scene.
The calculation of the surface reflectance in the synthetic blue band consists of three steps:
1. The blue band reflectance (index 1) is extrapolated from the green (index 2) and red
(index 3) band reflectance :
ρ1 = ρ2 + (ρ2 − ρ3 ) ∗ (λ2 − λ1 )/(λ3 − λ2 )
(6.1)
where the center wavelength of the blue band is taken as λ1 = 480 nm. This represents
the typical spectral behavior of soils and some artificial surfaces (asphalt, concrete).
2. The red and NIR (index 4) bands are employed to compute the ratio vegetation index
VI = ρ4 /ρ3 . Pixels with V I > 2.5 and ρ4 > 10% are defined as vegetation and the blue
band reflectance is calculated as :
ρ1 = ρ3 /2
(6.2)
3. Finally, water pixels are masked with the criterion ρ4 ≤ 7%, where the large threshold
of 7% is employed to account for potential turbid water bodies, and the blue band
reflectance is calculated as :
ρ1 = 1.2 ∗ ρ2
(6.3)
• specl2 batch, input=filename, sensor=’xx’ or
specl2 tile, input=filename, sensor=’xx’, ntx=ntx, nty=nty
The spectral classification based on template reflectance spectra is also available in the
batch mode and with the tiling option. The ’xx’ is a keyword for the sensor type, e.g.,
’xx’=’landsat7’ for Landsat-7 ETM. The complete list of sensor keywords is shown when
typing specl2 batch on the IDL command line without the sensor specification. The ntx, nty
keywords have the meaning explained for the ATCOR tile programs above.
• smile interp3 batch, input=filename, fpoly=fpname, option=number [, silent=silent]
Purpose: The atmospheric correction accounts for the column-dependent smile shift as specified in the ”smile poly ord4.dat” of the corresponding sensor folder, but the image columns
of each band belong to slightly different wavelengths.
This function interpolates the pixel reflectance values for each band to a specified reference
wavelength. Three options exist for the reference wavelength grid:
1. use wavelength corresponding to the center of the detector array,
2. use average wavelength over all detector columns (per band),
3. use nominal wavelength specified in the (ENVI) header of the reflectance cube.
The new reference center wavelengths are included in the header of the output file. If the
input filename is ”/path1/image atm.bsq” the output name is ”/path1/image atm smcorr.bsq”
indicating the ”smile corrected” common wavelength grid.
Function parameters are: ”filename” is the full name of the surface reflectance file, ”fpname”
CHAPTER 6. BATCH PROCESSING REFERENCE
106
is the full name of ”smile poly ord4.dat”, i.e., including the path, ’number’ is the above option
number (1 - 3), and if the keyword ’silent’ is set the progress about the band processing is
not issued to the command line.
This module is also available in the interactive mode (see main menu, ’Filter’, ”Spectral Smile
Interpolation (Image Cube)”, chapter 5.5).
¯
• at derpolish, infile, outfile, nbin, respfile *.rsp,
smooth ¯.., /lowpass, /adj
Derivative polishing routine.
PARAMETERS:
infile: file of reflectances to be filtered
outfile: name of output file to be created
nbin: number of adjacent bands to use for filtering (nbin=1
KEYWORDS:
respfile: response file used for wavelength reference (default: ENVI header values) lowpass:
perform lowpass filtering only
smooth: smooth the outputs by a lowpass filter of size ’smooth’ after derivative filtering
adj: use only adjacent bands (excluding current) fro derivatives
• at rhoapp, infile, calfile, e0solar [,outfile, scale=.., zen=.., date=..]
Apparent reflectance calculation.
PARAMETERS:
calfile: Atcor calibration file to be used for conversion of the cube
e0solar: File containing the solar irradiance for the sensor (atcor file)
outfile: name of output
KEYWORDS:
scale: scale for processing (same convention as for ATCOR, scale=1.0 is floating point output)
zen: solar zenith angle (default: 0 degrees), in degrees
date: date as two-elemt array [day,month]
• at smiledetect, incube, dbfile, respfile, resol, outfile, featureflags=[..], vis=.., zen=.., ele=..,chlist=..,
results=.., /spline=spline,zeroborder=[0—1—2], range=.., /overwrite
Smile detection routine.
PARAMETERS:
incube: input data cube
dbfile: raw database file to be used for convolution (no height interpolation)
respfile: response file (e.g., band001.rsp)
resol: internal resolution for the calculation
outfile: name of output file for smile coefficients
CHAPTER 6. BATCH PROCESSING REFERENCE
107
KEYWORDS:
featureflags: bytarr(n feat), 12 feature regions, featureflags[i] = 1 if feature is set, else 0;
vis: visibility [km]
zen: solar zenith angle [deg]; zenith at 0 deg.
ele: average ground elevation [km]
chlist: list of bands which are used for smile detection and for interpolation of the results
numbering starting at 0.
results: write idl save dump of all results in a file named *.sav together with the regular
output
spline = 1, spline channel interpolation, =0 linear channel interpolation of smile coefficients
zeroborder : 2 set smile coefficients to 0 at spectral borders
(first, last channel) 1 repeat smile coefficients outside of interpolated values
range : search range, default = 20 nm
overwrite: silently overwrites the older output
• at smoothdem, infile, dist, outfile, /median
DEM smoothing routine.
PARAMETERS:
infile: input data cube (single band ENVI image)
dist: size of smoothing filter
outfile: name of output file
KEYWORDS:
median: use median filter instead of default low pass filter.
Chapter 7
Value Added Products
As a ”by-product” of atmospheric correction a number of useful quantities can readily be calculated.
The first group of value added products include vegetation indices (based on surface reflectance
instead of at-sensor radiance), simple parametrizations of the leaf area index, and wavelengthintegrated reflectance (albedo). The second group comprises quantities relevant for surface energy
balance investigations which are a useful supplement for studies in landscape ecology and related
fields, e.g., as input for regional modeling of evapotranspiration. These include global radiation on
the ground, absorbed solar radiation, net radiation, and heat fluxes. Emphasis is put on simple
models based on the reflectance / temperature cube derived during the atmospheric correction.
No additional data (with the exception of air temperature) is taken into account. All value added
products are written to a file with up to 11 bands. The file structure is band sequential. If the
input file name is ”example.bsq”, the output reflectance file name is ”example atm.bsq”, and the
value added file name is ”example atm flx.bsq”, the ’flx’ indicating the most important part of the
calculation, i.e., the radiation and heat fluxes.
7.1
LAI, FPAR, Albedo
Many vegetation indices have been introduced in the literature. Only two are presented here,
because these are often used for simple parametrizations of the leaf area index (LAI), the fraction
of absorbed photosynthetically active radiation (FPAR), and surface energy fluxes (Baret and
Guyot 1991, Choudury 1994). The normalized difference vegetation index (NDVI) is defined as
N DV I =
ρ850 − ρ650
ρ850 + ρ650
(7.1)
where ρ650 and ρ850 are surface reflectance values in the red (650 nm) and NIR (850 nm) region,
respectively. The soil-adjusted vegetation index (SAVI) is defined as (Huete 1988, Baret and Guyot
1991, with L=0.5) :
SAV I =
(ρ850 − ρ650 ) ∗ 1.5
(ρ850 + ρ650 + 0.5)
(7.2)
The leaf area index (LAI) can often be approximated with an empirical three-parameter relationship
employing a vegetation index (VI=SAVI or VI=NDVI)
V I = a0 − a1 exp(−a2 LAI)
(7.3)
108
CHAPTER 7. VALUE ADDED PRODUCTS
109
Solving for LAI we obtain
LAI = −
a0 − V I
1
ln(
)
a2
a1
(7.4)
Sample sets of parameters are a0 =0.82, a1 =0.78, a2 =0.6 (cotton with varied soil types), a0 =0.68,
a1 =0.50, a2 =0.55 (corn), and a0 =0.72, a1 =0.61, a2 =0.65 (soybean) with VI=SAVI (Choudury et
al. 1994).
Note: Since it is difficult to take into account the parameters for different fields and different seasons it is suggested to use a fixed set of these three parameters for multitemporal studies. Then,
the absolute values of LAI may not be correct, but the seasonal trend can be captured.
Plants absorb solar radiation mainly in the 0.4 - 0.7 µm region, also called PAR region (photosynthetically active radiation, ASRAR 1989). The absorbed photosynthetically active radiation
is called APAR, and the fraction of absorbed photosynthetically active radiation is abbreviated
as FPAR. These terms are associated with the green phytomass and crop productivity. A threeparameter model can be employed to approxiate APAR and FPAR (Asrar et al. 1984, Asrar 1989,
Wiegand et al, 1990, 1991).
F P AR = C[1 − A exp(−B LAI)]
(7.5)
Typical values are C=1, A=1, B=0.4. Again, since it is difficult to account for the crop- and
seasonal dependence of these parameters, a constant set may be used for multitemporal datasets
to get the typical FPAR course as a function of time.
The wavelength-integrated surface reflectance (in a strict sense the hemispherical - directional
reflectance), is used as a substitute for the surface albedo (bi-hemispherical reflectance). It is
calculated as :
2.5µm
R
a=
ρ(λ)dλ
0.3µm
2.5µm
R
(7.6)
dλ
0.3µm
Since most satellite sensors cover only part of the 0.3 - 2.5 µm region the following assumptions
are being made for extrapolation. Extrapolation for the 0.30-0.40 µm region:
• ρ0.3−0.4µm = 0.8 ρ0.45−0.50µm , if blue a band (0.45-0.50 µm) exists.
• ρ0.3−0.4µm = 0.8 ρ0.52−0.58µm , green band, no blue band available.
Extrapolation for the 0.40-0.45 µm region:
• ρ0.4−0.45µm = 0.9 ρ0.45−0.50µm , if a blue band (0.45-0.50 µm) exists.
• ρ0.4−0.52µm = 0.9 ρ0.52−0.58µm , green band, no blue band available.
The reflectance reduction factors in the blue part of the spectrum account for the decrease of
surface reflection for most land covers (soils, vegetation). The extrapolation to longer wavelengths
is computed as:
• If a 1.6 µm band exists
– ρ2.0−2.5µm = 0.5 ρ1.6µm , if ρ850 /ρ650 > 3 (vegetation)
CHAPTER 7. VALUE ADDED PRODUCTS
110
– ρ2.0−2.5µm = ρ1.6µm , else
• If no bands at 1.6 µm and 2.2 µm are available the contribution for these regions is estimated
as :
– ρ1.5−1.8µm = 0.50 ρ0.85µm , if ρ850 /ρ650 > 3 (vegetation)
– ρ2.0−2.5µm = 0.25 ρ0.85µm , if ρ850 /ρ650 > 3
– ρ1.5−1.8µm = ρ0.85µm , (else)
– ρ2.0−2.5µm = ρ0.85µm , (else)
At least three bands in the green, red, and near-infrared are required to derive the albedo product.
Wavelength gap regions are supplemented with interpolation. The contribution of the 2.5 - 3.0 µm
spectral region can be neglected, since the atmosphere is almost completely opaque and absorbs all
solar radiation. The output ” flx” file contains the channels SAVI, LAI, FPAR, and albedo coded
as 16 bit integer with the following scale factors:
• SAVI: range 0-1000, scale factor 1000, e.g., scaled SAVI=500 corresponds to SAVI=0.5 .
• LAI : range 0-10,000, scale factor 1000, e.g., scaled LAI=5000 corresponds to LAI=5.0 .
• FPAR: range 0-1000, scale factor 1000, e.g., scaled FPAR=500 corresponds to FPAR=0.5 .
• Albedo: range 0-1000, scale factor 10, e.g., scaled albedo=500 corresponds to albedo=50% .
The next section presents a simplified treatment of the radiation and heat fluxes in the energy
balance.
7.2
Surface energy balance
Surface energy balance is an essential part of climatology. The energy balance equation applicable
to most land surfaces can be written as (Asrar 1989) :
Rn = G + H + LE
(7.7)
where, Rn is the net radiant energy absorbed by the surface. The net energy is dissipated by
conduction into the ground (G), convection to the atmosphere (H) and available as latent heat of
evaporation (LE). The amount of energy employed in photosynthesis in case of vegetated surfaces
is usually small compared to the other terms. Therefore, it is neglected here.
The terms on the right hand side of equation (7.7) are called heat fluxes. The soil or ground heat
flux (G) typically ranges from 10% to 50% of net radiation. Convection to the atmosphere is called
sensible heat flux (H). It may warm or cool the surface depending on whether the air is warmer or
cooler than the surface. The energy available to evaporate water from the surface (LE) is usually
obtained as the residual to balance the net radiation with the dissipation terms. Net radiation is
expressed as the sum of three radiation components:
Rn = Rsolar + Ratm − Rsurf ace
(7.8)
where Rsolar is the absorbed shortwave solar radiation (0.3 - 3 µm, or 0.3 - 2.5 µm), Ratm is the
longwave radiation (3 - 14 µm) emitted from the atmosphere toward the surface, and Rsurf ace is
the longwave radiation emitted from the surface into the atmosphere. Downwelling radiation is
CHAPTER 7. VALUE ADDED PRODUCTS
111
counted with a positive sign, the upwelling thermal surface radiation has a negative sign. The
absorbed solar radiation can be calculated as :
2.5µm
Z
Rsolar =
{1 − ρ(λ)} Eg (λ) dλ
(7.9)
0.3µm
where ρ(λ) is the ground reflectance, 1 − ρ(λ) is the absorbed fraction of radiation, and Eg (λ) is the
global radiation (direct and diffuse solar flux) on the ground. The numerical calculation of equation
(7.9) is based on the same assumptions regarding the extrapolation of bands and interpolation of
gap regions as discussed in chapter 7.1 dealing with the surface albedo. If the satellite imagery
contains no thermal band(s) from which a map of ground temperature can be derived, then Rsolar
is the only surface energy component that can be evaluated. In case of flat terrain with spatially
varying visibility conditions or rugged terrain imagery, a map of the global radiation is included as
an additional value added channel.
2.5µm
Z
Eg =
Eg (λ) dλ
(7.10)
0.3µm
For flat terrain imagery with constant atmospheric conditions the global radiation is a scalar quantity and its value can be found in the ”*log” file accompanying each output reflectance file. For
rugged terrain imagery, the global radiation accounts for the slope/aspect orientation of a DEM
surface element.
With thermal bands a ground temperature or at least a ground brightness temperature image can
be derived. Then the emitted surface radiation is calculated as
Rsurf ace = s σ Ts4
(7.11)
where s is the surface emissivity, σ = 5.669 ×10−8 W m−2 K −4 is the Stefan-Boltzmann constant,
and Ts is the kinetic surface temperature. For sensors with a single thermal band such as Landsat
TM an assumption has to be make about the surface emissivity to obtain the surface temperature.
Usually, s is selected in the range 0.95 - 1, and the corresponding temperature is a brightness
temperature. A choice of s = 0.97 or s = 0.98 is often used for spectral bands in the 10 - 12
µm region. It introduces an acceptable small temperature error of about 1-2◦ C for surfaces in the
emissivity range 0.95 - 1. Examples are vegetated or partially vegetated fields ( = 0.96 − 0.99),
agricultural soil ( = 0.95 − 0.97), water ( = 0.98), and asphalt / concrete ( = 0.95 − 0.96).
Emissivities of various surfaces are documented in the literature (Buettner and Kern 1965, Wolfe
and Zissis 1985, Sutherland 1986, Salisbury and D’Aria 1992).
The atmospheric longwave radiation Ratm emitted from the atmosphere toward the ground can be
written as
Ratm = a σ Ta4
(7.12)
where a is the air emissivity, and Ta is the air temperature at screen height (2 m above ground),
sometimes 50 m above ground are recommended. For cloud-free conditions, Brutsaert’s (1975)
equation can be used to predict the effective air emissivity :
pwv 1/7
a = 1.24 {
}
(7.13)
Ta
CHAPTER 7. VALUE ADDED PRODUCTS
112
Here, pwv is the water vapor partial pressure (millibars = hPa), and Ta is the air temperature (K).
Figure 7.1 shows pwv as a function of air temperature for relative humidities of 20 - 100%. The
partial pressure is computed as :
pwv = RH es / 100
(7.14)
where RH is the relative humidity in per cent, and es is the water vapor partial pressure in saturated
air (Murray 1967) :
es (Ta ) = es0 exp{
a(Ta − 273.16)
}
Ta − b
(7.15)
The constants are a = 17.26939, b = 35.86, and es0 = es (273.16K) = 6.1078 hP a. An alternative
to equation (7.13) is the following approximation (Idso and Jackson 1969) which does not explicitly
include the water vapor and holds for average humidity conditions, compare Figure 7.2.
a = 1 − 0.261 exp{−7.77 × 10−4 (273 − Ta )2 }
(7.16)
Figure 7.1: Water vapor partial pressure as a function of air temperature and humidity. Relative humidities
are 20% to 100% with a 10% increment, bottom to top curves, respectively (eq. 7.14).
The calculation of the heat fluxes G, H, and LE on the right hand side of equation 7.7 requires
different models for vegetated and man-made surfaces. For vegetated or partially vegetated surfaces,
we employ a simple parametrization with the SAVI and scaled NDVI indices (Choudury 1994,
Carlson et al. 1995) :
G = 0.4 Rn (SAV Im − SAV I)/SAV Im
(7.17)
where SAV Im = 0.814 represents full vegetation cover. The sensible heat flux is computed as :
H = B (Ts − Ta )n
(7.18)
B = 286 (0.0109 + 0.051 N DV I ∗ )
(7.19)
CHAPTER 7. VALUE ADDED PRODUCTS
113
Figure 7.2: Air emissivity after Brutsaert (eq. 7.13) and Idso/Jackson (eq. 7.16).
n = 1.067 − 0.372 N DV I ∗
N DV I ∗ =
(7.20)
ρ850 − ρ650
0.75 ∗ (ρ850 − ρ650 )
(7.21)
Equation (7.18) corresponds to equation (1a) of Carlson et al. (1995), because G is neglected there,
and so Rn − G represents the energy left for evapotranspiration. The factor 286 in equation (7.19)
converts the unit (cm/day) into (W m−2 ). N DV I ∗ is the scaled NDVI ranging between 0 and
1, and truncated at 1 if necessary. Equation (7.21) corresponds to equation (3) of Carlson et al.
(1995) with N DV I0 = 0 (bare soil) and N DV Is = 0.75 (full vegetation cover). The latent heat
flux LE is computed as the residual:
LE = Rn − G − H
(7.22)
A different heat flux model is employed for urban areas with man-made surfaces (asphalt, concrete,
roofs, etc.). These are defined here with the reflectance criteria
ρ650 ≥ 0.10 and
ρ850 ≥ 0.10 and
ρ650 > ρ850 ∗ 0.7
(7.23)
representing low vegetation indices with N DV I < 0.176. This simple spectral definition is not
unambiguous, it might also apply to soils. For urban areas the latent heat is usually very small,
and the fluxes G and H dominate. Therefore, the terms G, LE, and H are approximated by the
following three equations (Parlow 1998):
G = 0.4 Rn
(7.24)
LE = 0.15 (Rn − G)
(7.25)
H = Rn − G − LE
(7.26)
For low vegetation indices (SAV I < 0.1) the ground heat flux G from equation (7.17), i.e., the
vegetation model, agrees well with G from equation (7.24), i.e., the urban model. However, major
CHAPTER 7. VALUE ADDED PRODUCTS
114
differences exist for the LE and H terms, see table 7.1. Parameters for this table are: Eg =
800, Rn = 600, Ratm + Rsurf ace = −100 W m−2 , Ts = 30◦ C, and Ta = 20◦ C. The (veg) and
(urb) indicate the heat fluxes derived from the vegetation and urban model, respectively. For the
urban surfaces (asphalt, concrete) the G(veg), H(veg) and LE(veg) values are given in brackets
for comparison, but the corresponding ”urban” heat fluxes are valid because the ”urban” criterion
(equations 7.23, ρ650 ≥ 0.10, ρ850 ≥ 0.10, and ρ650 > ρ850 ∗ 0.7) applies. The last row repeats the
concrete case for Rsolar = 800 ∗ (1 − 0.36) = 512, Rn = Rsolar + Ratm + Rsurf ace = 512 − 100 =
412 W m−2 , a realistic reduced Rn value (compared to the asphalt where Eg = 800, Rsolar =
800 ∗ (1 − 0.12) = 700, Rn = 700 − 100 = 600 W m−2 ).
surface
full veget.
partial veget.
dark asphalt
bright concrete
bright concrete (*)
ρ650
0.05
0.10
0.11
0.35
0.35
ρ850
0.40
0.20
0.13
0.40
0.40
NDVI
0.78
0.33
0.09
0.07
0.07
G(veg)
77
185
(228)
(222)
-
H(veg)
87
76
(50)
(48)
-
LE(veg)
435
338
(322)
(330)
-
G(urb)
240
240
164
H(urb)
306
306
210
LE(urb)
54
54
37
Table 7.1: Heat fluxes for the vegetation and urban model. All fluxes in [W m−2 ].
All radiation and heat fluxes are calculated in units of W m−2 . They represent instantaneous flux
values. For applications, where daily (24 h) LE values are required the following equation can be
used for unit conversion:
cm
1
LE [
]=
LE [W m−2 ]
(7.27)
day
286
The latent heat flux LE is frequently called evapotranspiration (ET). Although LE and ET are used
interchangeably the unit (cm/day) or (mm/day) is mostly employed for ET. For water surfaces
the distribution of net radiation into G, LE, and H is difficult to determine, because it depends on
several other parameters. Therefore, G and H are set to zero here, and so LE equals Rn .
Spatial maps (files) of air temperature and air emissivity can also be included in the processing.
Usually, isolated point-like measurements of air temperature are available from meteorological stations. These have to be interpolated to generate a spatial map coregistered to the image prior
to applying the ATCOR model. Data in the file containing the air temperature must have the
Celsius unit, data of the air emissivity file must range between 0 and 1. Future improvements
to the ATCOR model will include an air temperature map derived from the image (”triangle” or
”trapezoidal” method employing the thermal band surface temperature and NDVI, Carlson et al.
1995; Moran et al. 1994).
In case of mountainous terrain, the air temperature Ta (z0 ) and water vapor partial pressure pwv (z0 )
at a reference elevation z0 have to be specified. The height dependence of air temperature is
then obtained with linear extrapolation employing a user-specified adiabatic temperature gradient
∂T /∂z:
Ta (z) = Ta (z0 ) +
∂T
(z0 − z)
∂z
(7.28)
where ∂T /∂z is typically in the range 0.65 - 0.9 (Celsius / 100 m). The water vapor partial pressure
is extrapolated exponentially according to
pwv (z) = pwv (z0 ) 10−(z−z0 )/zs
(7.29)
CHAPTER 7. VALUE ADDED PRODUCTS
115
where zs is the water vapor scale height (default 6.3 km). The list of all output channels of the
value added ”* flx.bsq” file is :
1. Soil adjusted vegetation index (SAVI), scaled with factor 1000,
2. Leaf area index (LAI), scaled with 1000,
3. Fraction of photosynthetically active radiation FPAR, scaled with 1000,
4. Surface albedo (integrated reflectance from 0.3-2.5 µm), per cent * 10,
5. Absorbed solar radiation flux Rsolar [W m−2 ],
6. Global radiation Eg [W m−2 ], omitted for constant visibility in flat terrain because it is a
scalar which is put into the ”*log” file .
The next channels are only available in case of at least one thermal band:
7. Thermal air-surface flux difference Rtherm = Ratm − Rsurf ace [W m−2 ],
8. Ground heat flux G [W m−2 ],
9. Sensible heat flux H [W m−2 ],
10. Latent heat LE [W m−2 ],
11. Net radiation Rn [W m−2 ].
Chapter 8
Sensor simulation of
hyper/multispectral imagery
After atmospheric correction the surface reflectance and temperature/emissivity cubes can be used
to simulate new products which might be of interest:
• at-sensor radiance cubes in the solar region (0.4 - 2.5 µm) for different solar geometries and
atmospheric conditions,
• at-sensor radiance cubes in the thermal region (8 - 14 µm) for different atmospheric conditions,
e.g. for satellite sensor studies,
• resampling of the surface reflectance cube to an existing or new multispectral sensor,
• resampling of the surface emissivity cube to an existing or new multispectral sensor.
This is a convenient way to simulate realistic data for a spaceborne version of an airborne instrument, to obtain radiance data under differenct atmsopheric conditions, or to compare hyperspectral
(hs) data with broad-band multispectral (ms) data. As a restriction, the TOA (top-of-atmosphere)
or at-sensor radiance calculated with the ”TOARAD” program assumes a nadir view. The ”hs2ms”
(hyperspectral-to-multispectral) program requires the hs and ms center wavelengths and the ms
channel filter curves for resampling. In addition, noise of the ms sensor can be included as Gaussian
noise with a specified amplitude, either as noise-equivalent radiance (NER) or as noise-equivalent
reflectance (N E∆ρ). The hs contribution to a certain ms band is weighted with the value of the
ms response curve at the corresponding hs wavelength, compare Fig. 8.1.
After summing all contributions the result is normalized with the sum of the hs filter values
ni
P
Lms (i) =
(k)
(i)
(k)
Lhs Rms (λhs )
k=1
ni
P
k=1
(8.1)
(i)
(k)
Rms (λhs )
(i)
where L denotes at-sensor (or TOA) radiance, Rms the ms response function of channel i, and ni is
the number of hs channels covered by the i-th ms filter function. A similar equation is used for the
resampling of surface reflectance. The weight factors wk for each hs channel are calculated with
116
CHAPTER 8. SENSOR SIMULATION OF HYPER/MULTISPECTRAL IMAGERY
117
Figure 8.1: Weight factors of hyperspectral bands.
(i)
The solid curve shows the response function Rms of a ms channel,
(j)
and the dashed lines indicate the hs center wavelengths λhs .
eq. 8.2, and they are documented in the corresponding ”.log” file created by program ”HS2MS”.
(i)
(k)
Rms (λhs )
wk (i) = P
ni
j=1
(i)
(j)
(8.2)
Rms (λhs )
Fig. 8.2 describes the sequence of processing for the sensor simulation in the solar region. After
atmospheric correction with ATCOR the ”image atm.bsq” contains the surface reflectance cube.
Program ”TOARAD” then calculates the at-sensor radiance for a different solar geometry, or atmospheric parameters. All parameters not specified as keywords (see list of keywords below) are
taken from the ”image.inn” file created by ATCOR.
The program ”HS2MS” can be started to resample the radiance cube to a ms image by specifying
the ms sensor (i.e., channel filter functions) and the ms noise equivalent radiance (NER). NER =
0 is allowed, so the resampled image product will only include the noise of the hs scene, which will
be reduced due to the inherent integration over several hs bands. A channel-constant NER or a
file with channel-dependent NER values may also be employed.
Figure 8.3 shows the GUI panel of program ”HS2MS”. Although the input image will usually be
a hyperspectral scene with n > 50 channels and the output a multispectral scene with m << n
channels, this program can also be employed for the case of a multispectral input image with
n < 10 channels and a panchromatic sensor with m=1 band. The program supports the four cases
of resampling mentioned above, i.e., solar or thermal at-sensor radiance, surface reflectance, or
emissivity.
The processing of hyperspectral thermal data is currently not supported by the satellite version
of ATCOR because of the lack of commercial sensors with these channels. However, this part is
already implemented in the airborne ATCOR. A detailed description of the keywords of program
”toarad” follows.
CHAPTER 8. SENSOR SIMULATION OF HYPER/MULTISPECTRAL IMAGERY
118
Figure 8.2: Sensor simulation in the solar region.
Keywords for the batch program ”toarad”
On the IDL command line, program names can be written in lower case letters, so as an example
”toarad” instead of ”TOARAD” is used synonymously in this context. If ”toarad” is submitted as
a batch job, the following keywords can be specified:
• toarad, input=filename, [ pixelsize=pixelsize, sz=solar zenith, atmfile=atmfile, elev=elevation,
vis=visibility, adjrange=adjrange, scalef=scalef ]
The input file name must include the path, and the keywords in brackets indicate optional parameters. If a keyword is set, it will overwrite the corresponding parameter from the ”.inn” file,
compare chapters 6.2 and 9.4. To perform a TOA/at-sensor radiance simulation for a given scene,
the user has to resample files from the monochromatic atmospheric database:
• for the altitude 99,000 m that serves as ”flight” altitude for space sensors, see chapter 4.6.
After running ATCOR for a certain scene and sensor, a surface reflectance cube is obtained which
is input to the TOA/at-sensor simulation that can be performed for a flat or a mountainous terrain.
A detailed description of the keywords of ”toarad” follows:
CHAPTER 8. SENSOR SIMULATION OF HYPER/MULTISPECTRAL IMAGERY
119
Figure 8.3: Graphical user interface of program ”HS2MS”.
• input=’/data1/image atm.bsq’, the ’ atm.bsq’ indicates a surface reflectance file which is the
output of an ATCOR run. The input file to ATCOR was ’/data1/image.bsq’, and toarad
extracts some information from the corresponding file ’/data1/image.inn’, for example the
sensor name. The output file name is ’/data1/image toarad.bsq’.
• atmfile=’h99000 wv29 rura’, this is an example of an atmospheric look-up-table file with a
rural aerosol and a water vapor column of 2.9 gcm−2 , see chapter 9.1. If the keyword atmfile
is not specified, then ’h99000 wv10 rura’ will be taken.
• elev=500, an example of a ground elevation at 500 m above sea level. If elev is not specified,
then elev=0 is assumed. However, if the keyword elev is not specified and the ’/data1/image.inn’
file contains file names for the DEM elevation, slope, and aspect, then the DEM files are taken,
and the TOA calculation is performed for a rugged terrain. If the keyword elev is specified
the simulation is always performed for a flat terrain regardless of any possible DEM file names
in the ’*.inn’ file.
• sz=35.5, an example of a solar zenith angle of 35.5◦ .
• vis=25, an example of a visibility of 25 km.
• pixelsz=4.5, an example of a pixelsize of 4.5 m .
CHAPTER 8. SENSOR SIMULATION OF HYPER/MULTISPECTRAL IMAGERY
120
• adjrange=500, an example of an adjacency range of 500 m.
• scalef=10,000, scale factor for the TOA radiance. The default is scalef=1.0 which provides
the output file as float data of TOA radiance in units of [mW cm−2 sr−1 µm−1 ]. If scalef > 1,
e.g. scalef=10,000, the output TOA radiance is stored as 16 bit unsigned integer multiplied
with the scale factor. The advantage is a smaller output file (compared to the 32 bit float),
the drawback is that radiances will be truncated at 65,000 which might happen for bright
surfaces (e.g., snow, vegetation in the NIR) with scalef=10,000, see Figure 8.4. Therefore, the
easiest way to avoid scale problems is to use the default scalef=1.0 and have a float radiance
output cube.
Figure 8.4: TOA radiances for three albedos and a solar zenith angle of 30◦ .
MODTRAN calculation for a mid-latitude summer atmosphere, rural aerosol, visibility 15 km,
ground elevation 500 m above sea level.
For convenience, a ”*.log” and an ”*.ini” file are created for the documentation of the processing
parameters, e.g., ’/data1/image toarad.ini’. In addition, the corresponding sensor calibration file
will be created. Example: sensor=’casi96’, scalef=1000, then file ’casi96 scalef1000.cal’ will be
created on the ’../atcor4/sensor/casi96/ directory with the radiometric calibration coefficient c1 =
0.001 for each band.
Chapter 9
Implementation Reference and Sensor
Specifics
This chapter discusses miscellaneous topics associated with the current implementation of ATCOR.
First the user is acquainted with the structure and handling of the atmospheric database. Second,
the supported input/output file types are given. The next item discusses the preference parameters,
e.g. the definition of thresholds employed for the masking of cloud and water areas, and options for
interpolating certain spectral regions. Then the parameters of the ”*.inn” file are described which
is employed for the interactive and batch processing. Last but not least a section on problems and
tips is included.
9.1
The Monochromatic atmospheric database
This section presents the technical details of the atmospheric database.
To be capable of handling typical hyperspectral sensors with arbitrary spectral bands in the solar and thermal spectral regions a large database of atmospheric LUTs was compiled with the
R radiative transfer code in 2010. The database is called ”monochromatic” because
MODTRAN5
of its high spectral resolution, compare figure 9.1. After resampling with the spectral response
functions of any sensor a typical size of the sensor-specific database is 10 MB. Chapter 9.1.4 contains a description of the resampling program RESLUT.
9.1.1
Visible / Near Infrared region
R was run with different wavenumber
In the solar spectral region (0.34 - 2.54 µm) MODTRAN
spacings to achieve a wavelength grid spacing of approximately 0.4 nm (except for the 1400 nm and
R
1800 nm regions). This required the use of MODTRAN’s
”p1 2008” database (i.e., 0.1 cm−1 )
in the 2.1 - 2.5 µm region. In addition, different RT algorithms were used: in atmospheric window
regions the scaled DISORT algorithm with 8 streams (SD-8) was employed, in absorption regions
the more accurate SD-8 with the correlated k algorithm was selected [27]. Since the wavenumber
grid is not equidistant in wavelength, the LUTs were resampled with an equidistant 0.4 nm grid of
Gaussian filter functions of FWHM=0.4 nm to speed up subsequent calculations. So the new LUT
database should be sufficient for instruments with bandwidths > 2 nm covering the solar spectral
region from 340 to 2540 nm.
The ”standard” database is calculated for nadir viewing instruments. An off-nadir database with
121
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
122
the tilt angles 0◦ - 30◦ (in steps of 10◦ ) is available upon request. It is intended for future hyperspectral space sensors such as EnMAP.
A separate ”CHRIS/Proba” database is included in the distribution containing calculations for the
tilt angles 0◦ , 35◦ , and 55◦ for seven equidistantly spaced relative azimuth angles (0, 30, ... 180◦ ).
CHRIS data acquisition is usually close (within ±2◦ ) to this set of tilt angles, and interpolation
is automatically performed. While the standard database is named ”atm database”, the CHRIS
database is named ”atm database chris” and it is automatically accessed if the letters ”chris”
or ”CHRIS” are part of the user-defined sensor name, e.g., ”chris mode5”. While the standard
database uses a 0.4 nm wavelength grid, the CHRIS database employs a 1 nm grid.
9.1.2
Thermal region
In the thermal region from 7.2 - 14.9 µm a 1 cm−1 grid is used, i.e., a 10 nm wavelength spacing
at 10 µm, using the Isaacs’s 2-stream algorithm including the correlated k algorithm. The Isaacs’s
algorithm is much faster than DISORT, and yields the same results for our cases in the thermal
region. The spectral resolution is twice the sampling distance, and a triangular weight function
with 2 cm−1 is employed. So the thermal region uses an equidistant wavenumber grid. In addition,
all files are calculated for view or scan angles from 0◦ (nadir) to 40◦ off-nadir with a 5◦ increment
to enable an accurate interpolation.
Figure 9.1: Monochromatic atmospheric database.
The database comprises calculations performed for a satellite altitude of 650 km, but for consistency
R
with the airborne ATCOR the symbolic height ’99,000’ is used in the file names. MODTRAN’s
mid-latitude summer atmosphere was used for the air pressure and temperature height profiles at
six water vapor columns (W=0.4, 1.0, 2.0, 2.9, 4.0, and 5.0 cm or or g cm−2 , (sea level-to-space
values) and different aerosol types. These represent dry to humid atmospheric conditions [59, 6].
They are needed for the water vapor retrieval to create interpolated / extrapolated values for the
range W=0.3 - 5.5 cm. In spectral regions where water vapor absorbs, the accuracy of the surface reflectance retrieval depends on the number of water vapor grid points and the interpolation
method (full range of W or sub-interval pertaining to a pixel [66]). The CO2 mixing ratio of the
atmosphere is set at 400 ppmv, the ozone column is fixed at 330 DU (Dobson Units, equivalent to
the former 0.33 atm-cm) for a ground at sea level. The aerosol types rural, urban, maritime, and
desert have been provided in the database.
These files have to be resampled with the sensor-specific channel filter curves. The file names for
the solar region include the altitude, the aerosol type, and the water vapor content. They have the
extension ”.atm”. Example: ”h99000 wv04 rura.atm” represents a file with the symbolic altitude
99,000 m, water vapor column 0.4 cm, and the rural aerosol.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
123
Each ”*.atm” file contains the look-up tables for the visibility range 5 - 120 km, solar zenith angles
0 - 70◦ , and ground elevations 0 - 2500 m (increment 500 m).
The files ”phasefct*.bin” in the ”../atcor/bin” directory contain the path radiance as a function
of the scattering angle for the standard multispectral instruments with tilt capability, e.g. SPOT,
Ikonos, Quickbird, ALOS AVNIR-2. A small field-of-view is assumed for all (hyperspectral or
multispectral) instruments, i.e., the specified tilt angle and solar zenith angle holds for the whole
scene.
9.1.3
Database update with solar irradiance
In the solar region any high spectral resolution database of LUTs is based on the specification of an
extraterrestrial spectral solar irradiance, because the values of path radiance, direct and diffuse solar
fluxes depend on solar irradiance. Other quantities (direct and diffuse atmospheric transmittances
and spherical albedo) are independent of the solar spectrum. ATCOR’s standard atmospheric
database is calculated for a certain irradiance E1 (λ), and the corresponding file ’e0 solar xxx.dat’
is included in the directory ’atm database’.
Beginning with the ATCOR-2011 release there is an option to switch from one extraterrestrial solar
irradiance source E1 (λ) to another one E2 (λ). The delivered high spectral resolution database of
atmospheric LUTs is based on the Fontenla-2011 solar irradiance spectrum (Fontenla et al. 2009,
2011 [35, 36]). It represents the solar irradiance for a quiet or ”low activity” sun and is recommended
as the standard spectrum. The original 0.1cm−1 resolution spectrum is convolved with Gaussian
filter functions (FWHM=0.4 nm) and mapped on an equidistant 0.4 nm grid. The file name of
this spectrum E1 (λ) is ’e0 solar fonten2011 04nm.dat’. If R1 denotes the set of quantities (path
radiance, direct, diffuse solar flux) based on E1 (λ), then the new set R2 with the irradiance spectrum
E2 (λ) is calculated as:
R2 (λ) = R1 (λ) E2 (λ)/E1 (λ)
(9.1)
Figure 9.2 presents a schematic sketch of this conversion. The folder ’sun irradiance’ contains a
number of solar irradiance files that can be selected. The folder of the atmospheric database DB1
pertaining to E1 (λ) includes the corresponding irradiance file (e.g. ’e0 solar fontan2011 04nm.dat’ )
and the calculated new database DB2 includes the E2 (λ) file (e.g., ’e0 solar kurucz2005 04nm.dat’ ).
The standard or ”active” database is named ’atm database’, while the new database includes 10
characters from the E2 file name, e.g. ’atm database kurucz2005’.
The ATCOR ”tools” panel contains the program to convert from one to another spectral irradiance database (see Figure 9.3). It enables an update of the ”monochromatic” atmospheric database
R computations (involving the corwithout the need to repeat the time-comsuming MODTRAN5
related k algorithm in some spectral regions). The user can also provide additional solar irradiance
files to the ’sun irradiance’ folder provided the spectral range, increment, and irradiance unit agree
with the template spectra.
Attention: ATCOR will always work with files in the ”active” folder ’atm database’, therefore the
old ’atm database’ has to be renamed (or deleted) and the folder with the new database has to
be renamed as ’atm database’ before applying the sensor-specific resampling program (RESLUT).
Since each ’atm database’ folder contains its corresponding solar irradiance spectrum a unique
identification is always possible. Previously generated channel-resampled ”*.atm” files do not have
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
124
Figure 9.2: Solar irradiance database.
a reference to their solar irradiance file, but they are based on the ’e0 solar kurucz1997 06nm.dat’
irradiance. Beginning with the 2011 release the directory of the ”*.atm” files contains an ASCII
file named ’irradiance source.txt’ identyfying the underlying solar irradiance file.
9.1.4
Sensor-specific atmospheric database
This sensor-specific database is created by resampling the files of the monochromatic database with
the sensor’s spectral response functions employing program RESLUT, see figure 9.4. An aerosol
subset or all aerosol files from the monochromatic database can be selected. All water vapor files
belonging to the selected aerosol type (e.g. wv04, wv10, wv20, wv29, wv40) will be resampled for
hyperspectral or user-defined sensors. The folder with the ”.atm” files also contains a file ””irrad source.txt” identyfying the underlying solar irradiance spectrum.
In addition, a file of the resampled extraterrestrial solar irradiance, e.g., ”e0 solar chris m1.spc”,
will be created in the corresponding sensor folder, e.g., ”../sensor/chris m1/”.
9.1.5
Resample sensor-specific atmospheric LUTs with another solar irradiance
It is also possible to resample existing sensor-specific LUTs (”.atm” files) with another solar irradiance spectrum. Input is a sensor from the ”atcor/sensor/” folder (example name ’xxx’) with the
corresponding spectral response files (”.rsp”) and a high-resolution solar irradiance file from the
”atcor/sun irradiance/” directory (example: ’e0 solar kurucz2005 04nm.dat’).
Output is a new sensor subdirectory (example: ”sensor/xxx kurucz2005/”) where the first 10 characters of the ’e0 solar kurucz2005 04nm’ (starting after the ’e0 solar ’) are appended to the input
sensor name. The contents of the input ’atcor/sensor/xxx/’ are copied to the output directory,
’e0 solar xxx.spc’ is deleted (in the output directory) and replaced by the new ’e0 solar xxx kurucz2005.spc’.
A comparison of ’e0 solar xxx.spc’ with ’e0 solar xxx kurucz2005.spc’ shows the influence of the
change of the irradiance spectrum. In addition, a new ’atm lib/xxx kurucz2005/’ is created where
all the LUTs ’.atm’ from the input ’atm lib/xxx/’ are replaced with the resampled selected irradiance spectrum. This new folder also contains a file ””irrad source.txt” identifying the selected
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
125
Figure 9.3: User interface to convert database from one to another solar irradiance.
irradiance source.
9.2
Supported I/O file types
The input image to ATCOR must have the band sequential (BSQ) ENVI format or the TIFF
format. Some restrictions apply to the TIFF format as detailed below. Several data types exist for
the encoding. The following data types of an input image are supported:
• byte, or unsigned 8 bit integer, ENVI data type = 1;
• signed 16 bit integer, ENVI data type = 2;
• unsigned 16 bit integer, ENVI data type = 12;
• signed 32 bit long integer, ENVI data type = 3;
• float (32 bit), ENVI data type = 4.
In case of the float input data type some restrictions exist for the image processing options. The
haze and cloud shadow removal cannot be selected, because they rely on integer based histogram
manipulations. The user should re-scale the float data to one of the supported integer data types
in this case.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
126
Figure 9.4: GUI panels of the satellite version of program RESLUT.
The default output image data type is byte if the input is byte data. Then a scale factor s=4 is
employed, i.e., the per cent reflectance value of each pixel is multiplied with s=4 and rounded to
byte. As an example, a surface reflectance value of 20.2% will be coded as 81. However, the user
can modify the scale factor (on ATCOR’s main panel). A value of s=10 to s=100 causes the output
file to be coded as signed 16 bit integer, i.e., with two bytes per pixel. The specification s=1.0
produces a float output image, i.e., with 4 bytes per pixel.
Attention: The float output could be used for testing on small images. For large files and an input
data type of 2 bytes per pixel the output float image would require twice the disk space of the
input image.
The default output data type is signed 16 bit integer for all integer (and float) input data employing
the scale factor s=100. The scale factor is always included in the output ENVI header file.
Note: Any positive value of the scale factor s is accompanied with a truncation of surface reflectance
values at 0 in the output cube. So a negative reflectance, e.g., caused by a wrong choice of visibility or inaccurate radiometric calibration, will be reset to zero in the output image. In the
”SPECTRA” module no truncation is applied. If a user wants the output reflectance cube without
zero-truncation, the scale factor s should be specified with a negative value, e.g., s=-1 will provide
a float output surface reflectance retaining negative reflectance values, s=-100 will provide a 16 bit
integer output file. The byte scale (−10 < s < −1 and output data range 0-255) cannot be used to
represent negative values. The negative scale factor should only be used for test purposes, since the
results do not make a physical sense, and some further processing options or modules are excluded
in this case, e.g. the value added calculation of surface energy balance components, the automatic
spectral classification (SPECL), or the BRDF corrections.
Note: The TIFF format is also allowed for the input file. However, some restrictions apply in this
case, compare chapter 6.2.
• All bands in one TIFF file: the channels in the file must have the ascending band order and
the maximum number of channels is 9.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
127
• Each band in a separate file: file names must include the band numbers, e.g., ”image band1.tif”,
”image band2.tif”, etc. Again, the maximum number of bands is restricted to 9. The first
band is specified to ATCOR and all bands will be processed automatically.
• An optional keyword tiff2envi exists for the ATCOR batch and tiling modes that produces an
automatic conversion of the input TIFF file (e.g., ”image.tif”) into the corresponding ENVI
file (e.g., ”image envi.bsq”). This file is used as a temporary input file to ATCOR and it will
be automatically deleted when the ATCOR run is finished. Two output surface reflectance
files will be generated if tiff2envi=1, an ENVI file (”image envi atm.bsq”) and a TIFF file
(”image atm.tif”). The ENVI output is needed if the spectral classification (SPECL) module
is run, otherwise it may be deleted by the user.
In the interactive ATCOR mode with GUI panels, the default for a TIFF input file is
tiff2envi=1, i.e., a corresponding input ENVI bsq (band sequential) file is created. In the
batch mode, the default for a TIFF input file is tiff2envi=0, i.e., the ENVI file conversion is
switched off and no intermediate files are created. This will save disk space and some file conversion time. However, if the ”image.ini” file specifies the de-hazing or de-shadowing option,
then tiff2envi is reset to 1 to enable the creation of of the needed additional intermediate
ENVI files. For non-TIFF files, the tiff2envi keyword is ignored.
Summary of output data types :
• byte (default surface reflectance scale factor = 4.0)
• 16 bit signed integer (scale factor ≥ 10.0, typically 10 or 100)
• float (scale factor = 1.0)
• The corresponding negative scale factors (except byte case) provide an output reflectance
cube allowing negative surface reflectance values (only recommended in a test phase).
9.3
Preference parameters for ATCOR
The preference parameters are now located in a user specific HOME directory ”∼/.idl/rese/atcor3/”,
so multiple users of the same license can retain their personal preference settings. The path
of the last input image is saved separately for the flat and rugged terrain versions of ATCOR,
i.e., ”preference atcor2 path.txt”, and ”preference atcor3 path.txt”. In addition, the file ”preference parameters.dat” contains a number of default parameters that can be adjusted to scene properties. This file contains the parameters with a short description.
line 1
line 2
A choice to set the water vapor values for water pixels:
1 = average water vapor value of land pixels is assigned to water pixels,
2 = line average of water vapor of land pixels is assigned to water pixels.
Only available with iwv model = 1, see the job control parameter section 9.4.
A cloud reflectance threshold Tc (%) in the blue-green region to define a cloud mask.
Pixels belong to the cloud mask if :
(a1) ρ∗ (blue) > Tc or (a2) ρ∗ (green) > Tc (asterisk: apparent reflectance)
Typical values for Tc range from 15 - 35% .
If the cloud reflectance threshold is too high, clouds will be included in the haze mask.
This will reduce the performance of the haze removal algorithm.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
line 3
line 4
line
line
line
line
5
6
7
8
line
line
line
line
line
line
line
line
line
line
line
line
9
10
11
12
13
14
15
16
17
18
19
20
128
A surface reflectance threshold ρw1 (%) for water in the NIR band.
Pixels belong to the water mask if ρ(N IR) < ρw1 (only NIR band available).
A surface reflectance threshold ρw2 for water in the 1600 nm region (if band exists).
Pixels belong to the water mask if ρ(N IR) < ρw1 and ρ1600 < ρw2 .
The defaults ρw1 = 5% and ρw2 = 3% allow some margin for turbid water.
interpolate bands in 760 nm oxygen region (0=no, 1=yes)
interpolate bands in 725 / 825 nm water region (0=no, 1=yes)
interpolate bands in 940 /1130 nm water region (0=no, 1=yes)
smooth water vapor map (box 50m*50m) (0=no, 1=yes)
The water vapor map is calculated on a pixel-by-pixel basis, a moderate spatial
smoothing (50m*50m or at least 3*3 pixels) reduces the noisy appearance.
interpolate bands in 1400/1900 nm nm water region (0=no, 1=yes)
cut-off limit for max. surface reflectance (default 150%)
” out hcw.bsq” file (haze/cloud/water/land) (0=no, 1=yes, 2=hcw + quality file)
water vapor threshold to switch off the cirrus algorithm, unit [cm]
define saturation with factor b: DN (saturated) ≥ b DN (max), b=0.9 to 1.
include non-linear influence of vegetation in water vapor calculation (yes/no)
start/stop wavelengths for interpolation in the 940 nm region
start/stop wavelengths for interpolation in the 1130 nm region
start/stop wavelengths for interpolation in the 1400 nm region
start/stop wavelengths for interpolation in the 1900 nm region
haze/sun glint over water: (apparent) NIR reflectance T1 (clear), T2 (haze)
reduce over/under-correction in cast shadow (0=no, 1=yes)
Note on the non-linear influence of vegetation in water vapor calculations:
This option applies to the APDA-regression algorithm and only if the 940 nm region is selected
for the water vapor retrieval. The retrieval is based on a linear interpolation across the absorption
region, and errors can occur due to the non-linear behavior of the reflectance of vegetated surfaces
in this region. A simple empirical correction to the water vapor map W is applied using the NDVI
calculated with the apparent reflectances in the red/NIR channels:
W (new) = W (old) − 0.1 (N DV I/0.7)
(cm)
(9.2)
The correction is only performed for pixels with N DV I ≥ 0.25 and values N DV I > 0.7 are reset
to 0.7.
Note on cut-off limit for surface reflectance
The default limit is set to a high value (150% reflectance) to avoid a truncation in spectra of high
reflectance surfaces, e.g. snow and/or surfaces with specular reflectance. The previous default
cut-off (before 2012) was set to 90%.
Note on factor b:
Factor b is a relative saturation factor applied to the maximum radiometric encoding, e.g. for 8
bit data and b=1 all pixels with DN=255 will be marked as saturated in the ” out hcw.bsq” file
(color coding: red). Setting b=0.9 implies pixels with DN > 230 will be considered as saturated
or in the non-linear radiometric range close to saturation. This factor is only used for 8 and 16 bit
(signed or unsigned) data, not for float or 32 bit data.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
129
Note on the cloud mask:
The criterion (a1) or (a2) is also coupled with the conditions:
ρ∗ (N IR)/ρ∗ (red) < 2 and ρ∗ (N IR)/ρ∗ (SW IR1) > 1 and N DSI < 0.7,
where NDSI is the normalized difference snow index. A quality or probability mask for clouds
is generated with the above three conditions and different apparent reflectance thresholds Tc in
the blue/green spectral region. For Tc = 15% we define a low probability cloud, Tc = 25% a
medium probability, and Tc = 35% a high probability cloud. The result is put into a cloud map
file named ”image quality.bsq” if the input scene is named ”image.bsq”. The cloud mask in the
”image out hcw.bsq” file is based on the user-defined threshold Tc (in the preference parameter
file) and the above three conditions.
Note on the water mask:
The NIR band surface reflectance threshold for a water mask is only used for sensors without visible
bands. For an instrument with visible bands, better water masks are obtained with the criterion
that the TOA reflectance ρ∗ spectrum must have a negative gradient for bands in the visible to
NIR :
dρ∗ (λ)
<0
f or
0.4 < λ < 0.85 µm
(9.3)
dλ
However, for a scene with a high average ground elevation (we use > 1.2 km above sea level) the
TOA reflectance criterion is again replaced with the NIR surface reflectance criterion, because of
the distinctly smaller path radiance. The water threshold for a 1600 nm band is always included
as the second criterion (if such a band exists).
Sometimes the gradient criterion with eq. 9.3 is not adequate, and the NIR /SWIR1 reflectance
thresholds yield a better water mask. This may happen in urban areas containing shadow pixels
cast by buildings. Then the NIR/ SWIR1 thresholds have to be defined as negative reflectance
values to overwrite the gradient criterion.
The band interpolation options are only intended for hyperspectral imagery. Linear interpolation
is employed in the 760, 725, and 825 nm regions. Non-linear interpolation as a function of the vegetation index is applied in the 940 and 1130 nm parts of the spectrum to account for the leaf water
content in plants. nterpolation in the strong atmospheric water vapor absorption regions around
1400 nm and 1900 nm is recommended because of the low signal and large influence of sensor noise.
However, interpolation can be disabled if required, i.e., for test purposes. If enabled, non-linear
interpolation is performed in the 1400 / 1900 nm regions by fitting the surface reflectance curves
with a hull of a template vegetation or soil spectrum. All interpolated channels are marked with
an ’*’ in the ENVI header of the output reflectance cube.
Haze or sunglint removal over water: the default apparent reflectance thresholds in the NIR channel for clear water and haze are T1 (clear) = 0.04 (or 4%) and T2 (haze) = 0.12 (or 12%), respectively. Pixels with values less than T1 (clear) are defined as clear water, pixels with values between
the thresholds T1 (clear) and T2 (haze) are assigned as haze (or sun glint). A lower value (i.e.,
T1 (clear) < 0.04) can be can be specified, but might cause a wrong classification of bright coastal
water (sandy bottoms and bleached coral waters). If the threshold T1 (clear) is too high, haze pixels
might erroneously be put into the clear water category.
Cast shadow areas (mountainous terrain): these may contain over- and/or undercorrected pixels
during the standard empirical BRDF correction. A reduction of these pixels is tried with the
following steps:
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
130
• bright pixels in the NIR with DN > DN (mean) − σ, σ=standard deviation, are removed
from the list of shadow pixels.
• a 7 x 7 pixel convolution filter is being applied to the shadow mask.
• a transition region shadow/sunlit is introduced.
• already dark pixels (DN < DN (mean) − σ in the NIR) are not reduced in brightness during
BRDF correction. The threshold is evaluated for a NIR channel, but the non-reduction of
brightness (reflectance) is applied to all channels.
9.4
Job control parameters of the ”inn” file (former ”ini”)
If the file name of the input image is ”example image.bsq” then a file ”example image.inn” is created
during the interactive ATCOR session. When all image processing parameters have been defined
by the user this ”inn” file is written to the directory of the corresponding image. When the image
is re-loaded during a later session, or when a batch job is submitted, all input parameters are read
from this file. It is suggested not to edit this file, because it might create inconsistent input data.
The file might contain empty lines when input is not required for a specific case. The IDL routine
for writing this file is available on request for users who want to run ATCOR batch jobs without
employing the interactive GUI panels. The contents of an ”inn” file are:
line 1 :
20/08/1989 Date (dd/mm/year)
i.e., 20/08/1989 occupies the first 10 columns.
line 2 :
10.0 ; scale factor reflectance
line 3 :
5.0 ; pixel size [m]
line 4 :
landsat4 5, Landsat-4/5 TM,
sub-directory ”../atcor2+3/cal/landsat4 5”, sensor text as defined in ”../atcor2+3/bin/sensor.dat”
line 5 :
1.0 ; gain setting
Any positive value is accepted, this gain setting g is used to replace the c1 in the corresponding
”.cal” file with c1 /g, where g is the same for all channels.
line 6 :
calfile ; calibration file name
line 7 :
0.9500, 0 ; iemiss, dem unit (surface emissivity, DEM height unit)
iemiss = surface emissivity option or value, disregarded if no thermal band exists.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
131
iemiss = 0 invokes = 0.98 to be consistent with the definition of earlier ATCOR versions.
Since iemiss=1 is reserved for the cover-dependent emissivity setting below, =1.0 has to be approximated as iemiss=0.999 or iemiss=0.9999.
In case of multiple thermal bands this holds for the thermal band itemp band employed for the
surface temperature evaluation, see chapter 4.6.
iemiss
iemiss
iemiss
iemiss
iemiss
=
=
=
=
=
1
2
3
4
5
:
:
:
:
:
fixed values of surface emissivity = 0.98 (water), 0.97 (vegetation), 0.96 (soil).
same as iemiss=3, (the iemiss=2 option of ATCOR4 is not supported here).
NEM or ANEM method, requires multiple thermal bands, see chapter 10.1.4.
ISAC method, requires multiple thermal bands, see chapter 10.1.4.
both NEM and ISAC, but ISAC is currently only supported for flat terrain imagery.
dem unit : 0 = [m], 1 = [dm], 2 = [cm] DEM height unit
line 8 :
fele ; DEM elevation file name (empty line for a flat terrain calculation)
line 9 :
fslp ; DEM slope file name (empty line for a flat terrain calculation)
line 10 :
fasp ; DEM aspect file name (empty line for a flat terrain calculation)
line 11 :
fsky ; DEM skyview file name (empty line for a flat terrain calculation)
line 12 :
fshd ; DEM cast shadow file name (empty line for a flat terrain calculation, rugged terrain: empty
if calculated ”on-the-fly”)
line 13 :
atmfile ; atmospheric LUT file name (reflective region)
• If the automatic aerosol type retrieval is intended for batch jobs, the usual aerosol identifier in
the file name (e.g. ’rura’) has to be replaced with ’auto’. Example: file name (without path) is
’aamsrura.atm’, replace it with ’aamsauto.atm’. The program then uses all aerosol types for
the ’ms’ = mid-latitude summer atmosphere in the aerosol type estimate, and selects the one
with the closest match, compare chapter 10.4.2. In the example of the ’ms’ case four aerosol
types (rural, urban, maritime, desert) are checked. In case of the ’tr’ = tropical atmosphere,
only three aerosol types (rural, urban, maritime) will be found in the atmospheric library.
The automatic aerosol type retrieval requires the parameter npref=1 (variable visibility, see
line 20 below). If npref=0, it is reset to npref=1.
In the interactive mode the user can just press the ’Aerosol Type’ button on ATCOR’s main
panel to execute the aerosol type retrieval, irrespective of the ’*.atm’ name in the ’.inn’ file.
line 14 :
temfile ; atmospheric LUT file name (thermal region, empty if no thermal band)
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
132
line 15 :
1.0 ; adjacency range [km]
line 16 :
35.0 ; visibility [km]
line 17 :
0.7 ; mean ground elevation ([km asl] not used in case of rugged terrain, where elevation file applies
line 18 :
33.0, 178.0 ; solar zenith, solar azimuth angle [degr.]
line 19 :
10.0, 150.0 ; off-nadir sensor tilt angle , sensor view azimuth angle [degr.]
For nadir-looking sensors the tilt angle is zero and the view azimuth is an arbitrary value.
line 20 :
0, 0, 1, 0, 0, 0, 1 ; npref, iwaterwv, ihaze, iwat shd, ksolflux, ishadow, icl shadow
seven parameters controlling the processing options:
npref = 0 : constant visibility
npref = 1 : variable visibility, based on dark reference areas in the scene
npref =-1 : variable visibility for each sub-image during batch job with tiling
iwaterwv = 0 : no water vapor correction or no water vapor bands available
iwaterwv = 1 : water vapor correction using bands in the 940 nm region
iwaterwv = 2 : water vapor correction using bands in the 1130 nm region
iwaterwv = 3 : 940 and 1130 nm bands are employed
• Haze removal is enabled by setting the parameter ihaze>0, no haze removal is specified with
ihaze=0. Separate parameter values define haze removal over land, haze/sunglint removal
over water, and the combination. Some criteria exist to check whether the haze/land removal
is likely to yield good results. The haze/land algorithm is switched off if those criteria are not
passed (ihaze=1 ). However, as these criteria might fail in certain cases, there is the option
of setting ihaze=-1 which enforces the haze removal disregarding the termination criteria.
ihaze
ihaze
ihaze
ihaze
ihaze
ihaze
ihaze
ihaze
=0
=1
=2
=3
=4
=-1
=-2
=-3
:
:
:
:
:
:
:
:
no haze correction
haze/land correction, might be switched off if quality check criteria are not passed
haze over water removal (requires clear water pixels)
haze/land and haze/water removal
sun glint removal over water
haze/land correction is executed disregarding quality checks
is treated as ihaze=2
haze/land removal is forced, haze/water removal needs clear water pixels
Haze removal is performed for the visible bands, sun glint removal for all bands.
iwat shd = 0 : water pixels are excluded from de-shadowing (land), default
iwat shd = 1 : water pixels are included in de-shadowing (land)
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
133
The option iwat shd = 1 might be useful if the internal water classification based on purely spectral
critera fails, and dark land pixels are classified as water (which is excluded from de-shadowing).
So this flag is only used if the de-shadowing option is set and if no external water map is supplied.
Example: scene is ”image1.bsq”, and a file ”image1 water map.bsq” or ”image1 hcw.bsq” exist in
the same folder, then the flag iwat shd is ignored because an external water map always has the
first priority.
ksolflux = 0 : file with value added channels not calculated
ksolflux = 1 : value added channels are calculated (*.flx file)
ishadow = 0 and fshd=” (empty string): no DEM cast shadow map is used
ishadow = 0 and fshd=”valid file name”: pre-calculated DEM cast shadow file is used
ishadow = 1 : DEM cast shadow mask is calculated ”on-the-fly”
The pre-calculated map avoids repeated on-the-fly calculations.
icl shadow = 0 :
icl shadow > 0 :
=1:
=2:
=3:
no cloud/building shadow correction
cloud/building shadow correction is performed
de-shadowed output as DN image corresponding to input DN scene
de-shadowed output as surface reflectance image
de-shadowed output as surface reflectance and DN image
line 21 :
0, 0.5, 0.5 : itriang, ratio red swir, ratio blu red
itriang = 0 : average vis. index of reference areas is employed for non-reference pixels
itriang = 1 : triangular interpolation of visibility index of reference areas
ratio red swir : ratio of surface reflectance of red to 2.2 µm band for the reference pixels
If no 2.2 µm band exists, but a 1.6 µm band, the ratio holds for the red-to-1.6 µm band.
If only VNIR bands exist (400 - 1000 nm) the ratio holds for the red-to-NIR band.
ratio blu red : ratio of surface reflectance of blue band to red band for the reference pixels.
line 22 :
0, 65.0, 0.25 ; ibrdf, beta thr, thr g, parameters for BRDF correction in rugged terrain
For a flat terrain, these parameters are not used.
• ibrdf = 0 : no empirical BRDF correction (or flat terrain)
• ibrdf = 1 : correction with cosine of local solar zenith angle (eq. 10.80 with b=1)
• ibrdf = 2 : correction with sqrt(cos) of local solar zenith angle (eq. 10.80 with b=1/2)
• ibrdf = 11 : correction with cosine of local solar zenith angle (eq. 10.80 with b=1), for
soil/sand. Vegetation: eq. 10.80 with exponent b=3/4 and b=1/3 for λ < 720 nm and λ > 720
nm, respectively, i.e., option (a) in the BRDF panel, see Figure 5.31 (”weak” correction),
• ibrdf = 12 : correction with cosine of local solar zenith angle (eq. 10.80 with b=1), for
soil/sand. Vegetation: eq. 10.80 with exponent b=3/4 and b=1 for λ < 720 nm and λ > 720
nm, respectively, i.e., option (b) in the BRDF panel, see Figure 5.31 (”strong” correction),
• ibrdf = 21 : correction with sqrt(cos) of local solar zenith angle (eq. 10.80 with b=1/2),
for soil/sand. Vegetation: eq. 10.80 with exponent b=3/4 and b=1/3 for λ < 720 nm
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
134
and λ > 720 nm, respectively, i.e., option (a) in the BRDF panel, see Figure 5.31 (”weak”
correction). This is the recommended standard yielding good results in most cases.
• ibrdf = 22 : correction with sqrt(cos) of local solar zenith angle (eq. 10.80 with b=1/2), for
soil/sand. Vegetation: eq. 10.80 with exponent b=3/4 and b=1 for λ < 720 nm and λ > 720
nm, respectively, i.e., option (b) in the BRDF panel, see Figure 5.31 (”strong” correction).
• beta thr : threshold local solar illumination angle βT where BRDF correction starts. If
beta thr=0 (and ibrdf > 0) then the angle βT is calculated in ATCOR depending on the
solar zenith angle and its value can be found in the corresponding ”* atm.log” file.
• thr g : g, lower boundary of BRDF correction factor, see chapter 2.2, eq. (2.12, and chapter
10.5.1)
line 23 :
1, 0.820, 0.780, 0.600 ; lai model, a0 vi, a1 vi, a2 vi
Parameters for the LAI model to be used if ksolflux > 0, see chapter 7
line 24 :
0.900, 0.950, 0.380 ; c fpar, a fpar, b fpar
parameters for the fpar model to be used if ksolflux > 0, see chapter 7
line 25 :
20.0, 0.83 ; air temperature (C), air emissivity, see chapter 7
Parameters for the net flux calculation (used for flat terrain, ignored for rugged terrain)
line 26 :
20.0, 0.50, 0.65, 15.0, 6.3 ; t air, z0 ref, tgradient, p wv, zh pwv, see chapter 7
t air : air temperature (Celsius) at elevation z0 ref
z0 ref : reference elevation for t air [km asl]
tgradient : air temperature gradients (Celsius per 100 m height)
p wv : ([mb or hPa], default, water vapor partial pressure at z0 ref)
zh pwv : ([km], scale height of water vapor, exponential decrease falls to 1/e value)
Parameters for the net flux calculation (rugged terrain, ksolflux > 0)
These are dummy values (not used) if ksolflux=0, or for a flat terrain.
line 27 :
2, 2 ; ihot mask, ihot dynr , parameters for haze correction
ihot mask = 1 : small area haze mask
ihot mask = 2 : large area haze mask
ihot dynr = 1 : thin to medium haze levels are corrected
ihot dynr = 2 : thin to thick haze levels are corrected
line 28 :
2, -0.500, 0.12, 0.08, 1 ; iclshad mask, thr shad, phi unscl max, phi scl min, istretch type
Parameters for correction of cloud/building shadow effects, if icl shadow > 0
Default values are put in this line even if icl shadow=0
iclshad mask = 1,2,3 : small, medium, large cloud shadow mask
thr shad = -0.500 : threshold for core shadow areas, -999 means threshold is calculated from image
histogram
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
135
phi unscl max : max of unscaled shadow function Φmax , see chapters 2.5, 10.5.5.
phi scl min : min of scaled shadow function Φ∗min , see chapters 2.5, 10.5.5.
istretch type: 1=linear stretching, 2=exponential stretching of Φ into Φ∗ .
line 29 :
ch940(1:6) vector with 6 channel numbers for the 940 nm water vapor retrieval
ch940(1) : left window channel (850 - 890 nm)
ch940(2) : right window channel (850 - 890 nm)
ch940(3) : left absorption channel (920 - 970 nm)
ch940(4) : right absorption channel (920 - 970 nm)
ch940(5) : left window channel (1000 - 1040 nm)
ch940(6) : right window channel (1000 - 1040 nm)
The left and right channel numbers for each window or absorption region may be the same. Put
in a zero channel number if not applicable.
line 30 :
ch1130(1:6) vector with 6 channel numbers for the 1130 nm water vapor retrieval
ch1130(1) : left window channel (1050 - 1090 nm)
ch1130(2) : right window channel (1050 - 1090 nm)
ch1130(3) : left absorption channel (1110 - 1155 nm)
ch1130(4) : right absorption channel (1110 - 1155 nm)
ch1130(5) : left window channel (1200 - 1250 nm)
ch1130(6) : right window channel (1200 - 1250 nm)
The left and right channel numbers for each window or absorption region may be the same. Put
in a zero channel number if not applicable.
line 31 :
chth w1, chth a1, chth a2, chth w2
bands for thermal water vapor retrieval (9-12 µm region)
chth w1 : left window channel (split-window covariance-variance method SWCVR)
chth w2 : right window channel
chth a1 : left absorption channel
chth a2 : right absorption channel
line 32 :
e water, e veget, e soil, e sand
surface emissivities (adjusted NEM, channel with Tmax)
line 33 :
0
iwv model
(water vapor retrieval: 1=no band regression, 2=band regression)
The choice iwv model = 0 indicates the water vapor retrieval is disabled. Option 1 means the water
vapor retrieval is performed for the selected bands, and in case of several measurement bands the
one with the smallest standard deviation is selected (per 940 and 1130 nm region). Finally, if both
regions are active, the average of the water vapor maps of both regions is taken. Option 2 employs
a linear regression of bands which yields better results for the water vapor map if the data is noisy
or not accurately calibrated. If iwv model = 2 and channels in the 940 nm and 1130 nm regions
are specified, then only the 940 nm region is evaluated with a linear regression of bands. If the
regression is intended for the 1130 nm region, then the 940 nm channels (all channels in line 29)
have to be specified as 0.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
136
line 34 :
0
icirrus
flag for cirrus removal (0=disabled, 1=enabled, -1=forced)
The value icirrus = -1 enforces cirrus detection and removal, i.e., termination criteria are ignored.
line 35 :
0
irrad0
flag for solar flux on ground (0=disabled, 1=enabled)
For irrad0=2 the surface reflected (leaving) radiance is calculated additionally.
For a flat terrain, ASCII spectra of the direct, diffuse, and global flux on the ground are provided in
the folder of the input scene, see chapter 10.1.3. In case of a flat terrain the global (i.e. direct plus
diffuse) flux image is calculated. For a rugged terrain the images of the direct and diffuse fluxes are
calculated. Note: as the flux files have to use a float encoding (32bits/pixel) the file size is twice
or four times the size of the input scene for a 16bit/pixel and 8bit/pixel input scene, respectively.
Notice concerning visibility iterations:
ATCOR will automatically iterate the initial visibility (parameter visib set in the ’.inn’ file) if the
number of negative reflectance pixels is larger than 1% of the scene for the red band (around 650
nm, vegetation is checked here) or the NIR band (around 850 nm, water is checked here). The
specified visibility is always kept if the visibility is set to a negative value, i.e., visib=-20 means the
program performs the calculation with visib=20 km and does not iterate even if a large number of
negative reflectance pixels occurs.
If the parameter npref is set to 1 the program computes the visibility map based on dark reference
pixels in the scene and npref=1 overwrites the initial value of the visib parameter. With npref=1
the program still iterates the average visibility of the visibility map by checking for water pixels
in the NIR band unless the specified visib is negative. A constant scene visibility is employed for
npref=0. In case of scene tiling and npref=0 or npref=1 the iterated visibility obtained for subscene 1 is also applied to all other sub-scenes to avoid brightness steps for the merged sub-scenes
caused by potentially different visibilities.
Attention : If scene tiling has to be performed and the aerosol map is requested for each subimage then specify npref=-1, but this could cause different average visibilities in the sub-scenes
and potentially brightness steps at the sub-scene borders.
9.5
Problems and Hints
Some often encountered problems and tips to come around are listed here.
• Distinction of haze and cloud, when can the haze removal algorithm be applied ?
Ground surface information under haze areas can still be recognized in the 600-900 nm region,
but the brightness contrast is low. The haze removal is only applied for channels in the 400 800 nm region. However, for cloud areas no ground information can be observed. If in doubt
whether a certain area should be assessed as haze or cloud covered, take a look at the scene
in the NIR (around 850 nm) channel: if surface features can be seen in this area, the haze
algorithm might be applied. If not, the area is cloud covered and a haze removal run will not
be successful.
• The cloud mask is not appropiate.
The cloud mask might contain too few pixels: then decrease the cloud reflectance threshold
in the ../atcor/preferences/preference parameters.dat file. The default threshold is 25% re-
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
137
flectance in the blue-green spectrum. The opposite case can also happen: if the cloud mask
comprises too many pixels the threshold has to be raised.
• The haze mask is not appropiate.
This problem may be connected with the setting of the cloud threshold. If the cloud threshold
is too high, cloud pixels are counted as haze, and the results of the haze removal are bad
because the haze algorithm is applied to clouds.
• The water mask is not appropiate.
This might lead to problems for the haze removal as well as the cloud/building shadow
removal, i.e., water is erroneously counted as land and included in the land mask. Enable
the output of a haze/cloud/water map, compare Fig. 4.15, to check the water mask. Read
chapter 4.8. There are two possibilities to define the water mask:
– If the average ground elevation of the scene is below 1.2 km, the default option for calculating the water mask is the negative gradient criterion for the apparent reflectance in
the VNIR region (see eq. 9.3). This yields the best water map in most cases. However, in
some cases (urban areas with shadows cast by buildings) the NIR/ SWIR1 water surface
reflectance thresholds (see chapter 9.3) yield better results. If the average scene elevation is below 1.2 km, one has to define negative reflectance values to both (NIR/SWIR1)
thresholds to overrule the default negative gradient criterion. In the latter case, an increase/decrease of the absolute value of the thresholds will increase/decrease the number
of water pixels.
Attention concerning de-shadowing: if this option is set and if the negative gradient criterion for the water mask is enabled and if the percentage of water pixels is greater than
15% of the scene, then the de-shadowing algorithm assumes that the large percentage of
water pixels is caused by the inadequate gradient criterion. Then, in the de-shadowing
part the NIR/ SWIR1 water surface reflectance thresholds are used, which can be set
high to reduce the percentage of (wrongly classified) water pixels, because these are likely
shadow areas (and water pixels will not be de-shadowed). However, if an external water
map exists (either from file image hcw.bsq” or image water map.bsq” if ”image.bsq” is
the file name of the scene) and this file indicates more than 15% of water pixels then this
information is regarded as reliable and this water map is excluded from de-shadowing.
– If the average scene elevation is above 1.2 km, the gradient criterion cannot be applied
and the NIR/ SWIR1 water surface reflectance thresholds apply as defined in the preference parameter file (chapter 9.3). These surface reflectance thresholds can be defined
as positive values (as the gradient criterion in not valid, anyway) or as negative. An
increase/decrease of the thresholds will increase/decrease the number of water pixels.
• Rugged terrain: the slope and illumination maps show strong horizontal and vertical stripes.
Strong artifacts in the DEM files will immediately be visible in the atmospherically / topographically corrected surface reflectance image. This problem frequently occurs for resampled
DEMs, e.g. the original DEM resolution is 30 m, which is resampled to a 5 m pixel size. Artifacts will be enhanced, especially if the stepsize of the original DEM (height resolution) is
coded as integer. Float data would have smoother transitions. A simple way to get better
results is the use of a larger kernel size for the slope/aspect calculation, e.g., kernel=5 or
kernel=7 instead of the default kernel=3 (pixels), but this approach causes a reduction of the
high frequency spatial information.
Attention: in addition to using float data before resampling, it is recommended to calculate the slope/aspect maps on the original (coarse spatial resolution) data, followed by the
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
138
high-resolution resampling step for all DEM files (elevation, slope, aspect). Do not employ
the sequence of resampling the elevation, followed by a slope/aspect calculation of the highresolution elevation map, because this approach enhances artifacts!
Steps to reduce slope/aspect striping:
1. FLOAT(ELEVATION file) (if it is stored as integer)
2. Calculate SLOPE (and also ASPECT) with a low pass filter 5x5 pixels
3. Resize SLOPE (ASPECT) file: factor 4 larger
4. Convolve (lowpass 7x7 pixels)
5. Resize with factor 0.25 using nearest neigbor to obtain original size.
Note that the function DEM Smoothing 5.4.4 allows an efficient DEM smoothing.
• Landsat and ASTER thermal band processing.
The thermal band(s) are sensitive to the atmospheric water vapor column. However, the
thermal band atmospheric LUTs (US-standard, mid-latitude summer, tropical etc) only provide a discrete set of water vapor columns (u), see chapter A. If the nearest u value from this
set deviates more than 0.2-0.3 cm from measured data (e.g. radiosonde profile) the user may
generate a new thermal LUT with a water vapor column u as a linear combination of two
existing LUTS with water vapor contents u1 and u2 : u = w1 u1 + (1 − w1 ) u2 . Example:
u = 2.4 cm, u1 = 2.08 cm (subarctic summer), u2 = 2.92 cm (mid-latitude summer), then
w1 = (u2 − u)/(u2 − u1 ) = 0.619. This manipulation can be performed in the SPECTRA
module after pressing the button ”Mixing of Atmospheres”. There, the user has to select two
existing atmospheric files, defines the weight w1 , and assigns a file name to the new mixed
LUTs. This file can be loaded from the main ATCOR panel.
If no atmospheric water vapor information is available, but lake temperature measurements
exist, the user can define an appropriate temperature offset k0 to match the satellite-derived
temperature and the water body temperature. The corresponding panel (”Surface Radiance
to Temperature Conversion”) pops up when the SPECTRA module or the image processing
options are entered.
9.6
Metadata files (geometry and calibration)
This section explains how the geometry and calibration information of various sensor-specific metadata files has to be interpreted for use in ATCOR. Besides the atmospheric LUTs for the nadir
view, there are files for off-nadir view geometries covering tilt angles from 0◦ to 50◦ (increment
10◦ ) and relative azimuth angles from 0◦ (backscatter) to 180◦ (forward scatter) with an increment
of 30◦ , the ”phase fct*.bin” files in the ATCOR directory. A corresponding tilt/azimuth angle
interpolation of the LUTs is automatically done.
9.6.1
Landsat-7 ETM+
For ETM+ two types of metadata files are distributed. The first type contains the min/max
radiance for each band, e.g., Lmax band1 = 191.6, Lmin band1 = -6.2, from which the radiometric
offset c0 and slope or gain c1 for ATCOR’s ”.cal” file are calculated as :
• c0 = 0.1 ∗ Lmin, and c1 = 0.1 ∗ (Lmax − Lmin)/255.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
139
The factor 0.1 converts from the ETM+ radiance unit W m−2 sr−1 µm−1 into the ATCOR radiance
unit mW cm−2 sr−1 µm−1 . The second type of meta file (fast format, metafile *.fst) specifies the
”bias” and ”gain” values directly (line with ”biases and gains in ascending band number order”),
again the factor 0.1 is required to convert into the ATCOR radiance unit: c0 = 0.1 * bias, and c1
= 0.1 * gain.
Different types of processing are used in the NLABS and LPGS environments, see the comprehensive
article [34]. The general equations to convert the digital number DN into an at-sensor radiance are
L = B + G · DN
B = Lmin −
G=
Lmax − Lmin Qmax − Qmin
Lmax − Lmin
Qmax − Qmin
(9.4)
Qmin
(9.5)
(9.6)
where B = bias, G = gain, and Qmin=1, Qmax=255 for LPGS processing starting at December 8,
2008, while Qmin=0 and Qmax=255 is used for the previous NLAPS processing. The factor 0.1 is
required to convert into the ATCOR radiance unit, i.e., c0 = 0.1 * B, and c1 = 0.1 * G.
For the thermal band two files, e.g. ”xxx nn61.tif” and ”xxx nn62.tif”, are included per scene,
the ”61” indicates the low gain, the ”62” indicates the high gain data. Either one can be selected
for ATCOR, but an update of the corresponding thermal ”bias” and ”gain” from the meta file is
required in the radiometric calibration ”.cal” file.
Notice: the standard negative offset values often lead to negative surface reflectances for dark targets, therefore in many cases the magnitude of the negative offset has to be decreased, typically by
a factor 2 (ETM bands 1-4).
Note concerning Landsat-4/5 TM :
A difficult topic: there is no standard header format with metadata. Different formats existed
in the past, depending on Landsat processing station and year of processing. The radiometric
calibration is varying as a function of the day after launch, compare references [82], [33]. A file
cal gain table kamstrup hansen.dat is available on the directory ”../atcor/cal/landsat4 5” containing the gain=c1 values for 1985-2005 for bands 1-4 calculated with the regression equation of [33].
Other publications deviate 10 - 20% from the Kamstrup-Hansen c1 values. However, for reprocessed
NLABS / LPGS Landsat-4 or Landsat-5 TM data, equations 9.4 to 9.6 are also valid.
9.6.2
SPOT
The metadata is specified in two files, a VOL LIST.PDF and a METADATA.DIM. The first file
is intended for a quick overview, the second file contains the complete set of specifications. The
absolute calibration gains for each band can be taken from either file and should be put into the
corresponding ”.cal” file as they are. In theh METADATA.DIM
i file the calibration gains are named
PHYSICAL GAIN. The SPOT unit is 1/ W m−2 sr−1 µm−1 , but it is automatically converted
into the ATCOR radiance unit. The standard offset values are zero. Occasionally however, for
SPOT-4/5 data a slightly negative offset has to be introduced for band 4 (1.6 µm) in cases when
the scene water reflectance is too high (it should be close to zero).
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
140
The geometry of data acquisition is described in the the METADATA.DIM file. The solar geometry
is specified with the solar elevation and azimuth angle. The sensor tilt geometry is defined by the
incidence angle θI at the earth’s surface, or the corresponding sensor tilt/view angle θV at the orbit
altitude h, see Fig. 9.5. Both angles are specified in the METADATA.DIM, but the tilt angle is
input to ATCOR. The tilt/view angle is not included in old versions of METADATA.DIM, but was
added later. For a given incidence angle the corresponding tilt/view angle can be calculated as :
h
θV = arcsin
i
RE
sin(θI ) 180/π
RE + h
(9.7)
where RE = 6371 (km) is the earth radius and h=832 (km) is the SPOT orbit altitude. Example:
incidence angles of 5◦ , 10◦ , 20◦ , 30◦ correspond to view angles of 4.4◦ , 8.8◦ , 17.6◦ , and 26.2◦ , respectively.
Figure 9.5: SPOT orbit geometry.
In addition to the tilt angle the view direction with respect to the flight path is specified. Nearly all
SPOT data (99.9%) is recorded in the descending node, i.e., flying from the north pole to the equator
(indicated by a negative value of the velocity vector for the Z component in the METADATA.DIM).
Then a positive incidence (tilt) angle in METADATA.DIM means the tilt direction is left of the
flight direction (”east” for the descending node). This is indicated by an ”L” in the incidence angle
in VOL LIST.PDF, e.g. incidence angle L20.6 degree. A negative incidence angle means the sensor
is pointing to the ”west” (coded as R=right in the VOL LIST.PDF, e.g. incidence angle R20.6
degree). For ATCOR the satellite azimuth as seen from the recorded image has to be specified. If
α denotes the scene orientation angle with respect to north (see Fig. 9.6) then the satellite azimuth
angle φV as viewed from the scene center is :
• φV = α + 270◦
if tilt/incidence angle is positive (L=left case, ”east”)
• φV = α + 90◦
if tilt/incidence angle is negative (R=right case, ”west”)
Attention:
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
141
Figure 9.6: Solar and view geometry.
• Tricky: The orientation angle is specified in the VOL LIST.PDF, but does not show if the
METADATA.DIM is viewed with an XML browser. However, it is included in the METADATA.DIM and can be found when the file is opened with an editor. On the other hand,
the view angle is not included in the VOL LIST.PDF, but is displayed with an XML browser
applied to METADATA.DIM .
• SPOT-4/5 imagery is usually delivered in the DIMAP format, a tif file with the band sequence
3/2/1/4, NIR/Red/Green and 1.6 µm. The wavelength increasing sequence has to be created
before offering the file to ATCOR.
Attention:
Old SPOT-2 imagery are usually distributed in the CAP format. For this old format the SPOT
leader file and the voldir.pdf indicate: ”L - instrument looks to west” and ”R - instrument looks
to east”. This is a header coding error, it is just vice versa, so interpret L = east, R = west.
9.6.3
ALOS AVNIR-2
The ALOS satellite has a sun-synchronous orbit of 690 km and among other instruments carries the
AVNIR-2 optical payload. AVNIR-2 has four spectral channels (blue, green, red, NIR) with a nadir
resolution of 10 m. The instrument has a ±44◦ across-track tilt capability. Different metafiles are
available, one is in the DIMAP format. It contains the relevant geometric and radiometric parameters. The convention for the tilt and orientation angles is similar to SPOT, compare Fig. 9.6, i.e.,
a tilt left (with respect to flight direction) is coded as ’L’ (tilt angle > 0), a tilt right is coded as ’R’
(tilt angle < 0). The radiometric calibration coefficients are given in the unit mW m−2 sr−1 nm−1 ,
thus they have to be multiplied with 0.1 to convert them into the unit mW cm−2 sr−1 µm−1 used
by ATCOR.
9.6.4
Ikonos
Ikonos metadata files look like ”po 3964 metadata.txt” where the po indicates the project order
and the following number the project number. The meta data include the geographic coordinates
and the solar elevation and azimuth angles. The sensor can tilt into any direction, and the satellite
geometry as viewed from the scene center is specified with :
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
142
• Nominal Collection Azimuth : absolute azimuth view angle, e.g.. east = 90◦ .
• Nominal Collection Elevation.
ATCOR’s tilt angle can be calculated from equation 9.7 with the Ikonos orbit altitude 680 km.
The tilt angle is close to the ”incidence=90-elevation”, see Table 9.1.
elevation (degree)
90
85
80
75
70
65
60
55
incidence (degree)
0
5
10
15
20
25
30
35
tilt (degree)
0.0
4.5
9.0
13.5
18.0
22.4
26.9
31.2
Table 9.1: Elevation and tilt angles for Ikonos.
Ikonos offers a radiometric calibration L = DN / calcoef where calcoef is specified in the in-band radiance unit mW cm−2 sr−1 , see http://www.spaceimaging.com/products/ikonos/spectral.htm. For
post 22 February 2001 scenes with 11 bit data calcoef is specified as 728, 727, 949, and 843
(blue, green, red, NIR band, respectively). These values have to be converted into c1 = 1 /
(calcoef*bandwidth) and are stored in the ”ikonos 2001 std.cal” standard calibration file.
9.6.5
Quickbird
The metadata files are named ”*.IMD”. They contain the geographic coordinates. The ”sunEl” and
”sunAz” keywords (or ”meanSunEl” and ”meanSunAz”) specify the solar elevation and azimuth
angle, respectively. Similar to Ikonos, the sensor can tilt into any direction. The satellite geometry
as viewed from the scene center is specified with ”satEl” or ”meanSatEl” (satellite elevation angle),
and ”satAz” or ”meanSatAz” (absolute azimuth angle). ATCOR’s tilt angle can be calculated from
equation 9.7 with the Quickbird orbit altitude 450 km. The tilt angle is close to the ”incidence=90satEl” value, see Table 9.2. Depending on the processing date, the tilt angle may also be included
in the ”.IMD” file, then it is named ”offNadirViewAngle” or ”meanOffNadirViewAngle”.
elevation (degree)
90
85
80
75
70
65
60
55
incidence (degree)
0
5
10
15
20
25
30
35
tilt (degree)
0.0
4.7
9.3
14.0
18.6
23.2
27.8
32.4
Table 9.2: Elevation and tilt angles for Quickbird.
The Quickbird sensor uses the radiance unit W m−2 sr−1 (in-band radiance) which can be converted into a spectral (band-average) radiance employing the effective bandwidth of each channel,
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
143
specified as ∆λ = 0.068, 0.099, 0.071, and 0.114 µm for the blue, green, red, and NIR band,
respectively (reference [46] from http://www.digitalglobe.com). The calibration is different for
compressed 8-bit data and the original 11-bit data. ATCOR contains a template for an 8 bit .cal
file (”quickb 8bit std.cal”) and an 11 bit file (”quickb 16bit std.cal”). However, it is recommended
to use only the 11 bit data for ATCOR. The ”.IMD” metadata file contains the absolute calibration factor (absCalFactor) for each multispectral channel in the unit W m−2 sr−1 . Depending on
processing date, the ”effectiveBandwidth” = ∆λ (µm unit) is also included. The nominal offset is
c0 = 0 in each channel, and the ATCOR gain c1 has to be specified in the unit W cm−2 sr−1 µm−1
which requires the following conversion equation for Quickbird:
• c1 =
absCalF actor ∗ 0.1
.
∆λ
Therefore, the template calibration file has to be updated, i.e., copied to a new file name, and edited
according to the absCalFactor of the scene IMD file and the above spectral bandwidth values ∆λ.
9.6.6
IRS-1C/1D Liss
The metadata file contains the geographic coordinates as well as the solar elevation and azimuth
angles. It also includes the radiometric calibration coefficients, the bias B = Lmin and gain G =
Lmax in the ATCOR radiance unit mW cm−2 sr−1 µm−1 . The radiometric coefficients for ATCOR’s
”.cal” file have to be calculated as
• c0 = Lmin, and c1 = (Lmax − Lmin)/255.
9.6.7
IRS-P6
The IRS-P6 platform carries three optical sensors: the AWiFS (advanced wide-field-of-view sensor),
the Liss-3, and the Liss-4. AWiFS (60 m resolution) and Liss-3 (20 m) have the same spectral bands
(green, red, NIR, and SWIR1 at 1.6 µm), the LISS-4 (red band) serves as the high-resolution camera
(5 m). Similar to the IRS-1C/1D, the radiometric calibration coefficients are included in the meta
file: the bias B = Lmin and gain G = Lmax are specified in the unit mW cm−2 sr−1 µm−1 , and the
nominal value of Lmin is zero. For each sensor (AWiFS, Liss-3, Liss-4) the calibration coefficients
seem to be constant with time, i.e., independent of the scene, based on laboratory calibration. The
radiometric coefficients for ATCOR’s ”.cal” file have to be calculated as
• c0 = Lmin, and c1 = (Lmax − Lmin)/b.
where b=1023 for AWiFS (10 bit data encoding), and b=255 for Liss-3 and Liss-4 (8 bit encoding).
The analysis of a couple of scenes showed that a non-zero bias c0 is required to obtain reasonable
surface reflectance spectra. Therefore, typical average bias values are included in the standard
”*.cal” file for each sensor. A fine tuning of the calibration coefficients may be necessary to obtain
better agreement between scene-derived surface reflectance spectra and library or ground measured
spectra.
9.6.8
ASTER
ASTER has 9 reflective and 5 thermal bands. ATCOR calculates surface reflectance and a surface
(brightness) temperature (from band 13). ASTER has four gain settings (high=H, normal=N,
and low1=L1, low2=L2) for the reflective bands. Table 9.3 contains the c1 values for the different
reflective bands and gain settings in the ATCOR radiance unit mW cm−2 sr−1 µm−1 . It was taken
from the ASTER user’s guide ([18]). The thermal band 13 has a calibration gain of c1=5.693E-4.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
band
1
2
3
4
5
6
7
8
9
high gain
0.0676
0.0708
0.0423
0.01087
0.00348
0.00313
0.00299
0.00209
0.00159
normal gain
0.1688
0.1415
0.0862
0.02174
0.00696
0.00625
0.00597
0.00417
0.00318
low gain 1
0.225
0.189
0.115
0.0290
0.00925
0.00830
0.00795
0.00556
0.00424
144
low gain 2
N/A
N/A
N/A
0.0290
0.0409
0.0390
0.0332
0.0245
0.0265
Table 9.3: Radiometric coefficients c1 for ASTER.
9.6.9
DMC (Disaster Monitoring Constellation)
DMC is a constellation of several orbiting satellites with an optical payload intended for rapid
disaster monitoring. All DMC sensors have three spectral bands (green, red, NIR) with a spatial
resolution of 32 m and a swath of 600 km. The metadata file (*.dim and *.htm formats) pertaining
to each scene contains the solar geometry and the radiometric calibration coefficients. The bias
and gain specified in the metadata are defined as:
L = bias + DN/gain
(9.8)
using the radiance unit W m−2 sr−1 µm−1 . Since ATCOR uses the radiance unit mW cm−2 sr−1 µm−1
and the equation
L = c0 + c1 DN
(9.9)
the calibration coefficients have to be calculated as :
c0 = 0.1 ∗ bias
(9.10)
c1 = 0.1/gain
(9.11)
Note: analysis of some DMC data from 2007 indicates that the specified bias in the NIR band is
too high, and better results are obtained if bias(NIR) = 0 is employed.
9.6.10
RapidEye
The RapidEye constellation consists of 5 identical instruments in different orbits enabling a high
temporal revisit time for any area. The sensor has 5 multispectral bands covering the blue to NIR
region, with the specialty of a red-edge band (at 710 nm, bandwidth 40 nm). In addition, the
instruments can be tilted in the across-track direction. The nadir spatial resolution is 6.5 m. The
.xml metafile contains information on the solar elevation angle (”illuminationElevationAngle”),
solar azimuth (”illuminationAzimuthAngle)”, and the view geometry, i.e. the ”acrossTrackIncidenceAngle” and the view azimuth (”azimuthAngle”).
ATCOR requires the sensor tilt angle θV , which is close to the across-track incidence angle θI on
the ground. The exact calculation can be done with eq. 9.7 using the RapidEye orbit height 630
km.
CHAPTER 9. IMPLEMENTATION REFERENCE AND SENSOR SPECIFICS
9.6.11
145
GeoEye-1
GeoEye-1 provides optical data with four multispectral channels in the 480 - 840 nm region with
a spatial resolution of about 1.7 m. In addition, panchromatic data with a resolution of about 0.5
m is available. The radiometric encoding is 11 bits per pixel. The metafile for each scene contains
the radiometric offset and gain values. These values are given in the same unit as used by ATCOR
(i.e. mW cm−2 sr−1 µm−1 ), so they can be directly taken, i.e.,
c1 = Gain
(9.12)
The Offset = c0 is usually zero.
9.6.12
WorldView-2
WorldView-2 provides optical data with 8 multispectral channels in the VNIR region (428 - 923 nm)
at a spatial resolution of 1.8 m (nadir) with a dynamic range of 11 bits per pixel. The instrument
has selectable radiometric gain factors (”absCalFactor”) specified in the metafile (*.IMD). The
offset c0 is zero for all channels and the gain c1 for ATCOR has to be calculated as:
c1 = 0.1 AbsCalF actor / F W HM
(9.13)
where FWHM is the effective bandwidth (”effectiveBandwidth” in µm) as specified in the metafile.
Although the bandwidth is constant per channel, the gain c1 might have to be updated, because
the absCalFactor can vary from scene to scene. Additionally, panchromatic images with a 0.5 m
resolution are available.
Chapter 10
Theoretical Background
Standard books on optical remote sensing contain an extensive presentation on sensors, spectral
signatures, and atmospheric effects where the interested reader is referred to (Slater 1980 [80],
Asrar 1989 [2], Schowengerdt 2007 [78]). This chapter contains a description of the concepts and
equations employed for the atmospheric correction.
We start with the basic equations in the solar and thermal spectral region for clear sky conditions
(standard case), then move on to non-standard conditions comprising bidirectional reflectance
(BRDF) effects, hazy scenes, and a treatment of shadow areas caused by clouds or buildings. Standard atmospheric conditions include the option of a constant visibility (aerosol optical thickness)
and water vapor content per scene, as well as the retrieval of a visibility and water vapor map
if the required spectral bands are available for the specific sensor. Water vapor correction on a
pixel-by-pixel basis is usually necessary for hyperspectral imagery.
The section on the non-standard conditions contains a short discussion on empirical correction
methods for bidirectional effects. It continues with the description of a statistical haze removal
method. The third section presents a technique to compensate shadow effects, i.e. cloud or building
shadow areas are masked and de-shadowed. Then, an overview is presented of all major processing
steps involved in the atmospheric correction.
After atmospheric correction, the surface reflectance cube can be used for classification. A simple
automatic method is included here based on template reflectance spectra of different surface covers.
Finally, the accuracy of the atmospheric correction is discussed.
10.1
Basics on radiative transfer
This chapter presents the basic concepts and the terminology. The full set of equations is documented here as implemented in ATCOR. We start with the radiative transfer equation in the solar
spectral region (0.4 - 2.5 µm) for a flat terrain under clear sky conditions. First, the equation
for an infinite plane of uniform reflectance is presented. Then the case of a small uniform surface
embedded in a large homogeneous background of different reflectance is discussed. We continue
with the rugged terrain, and finally discuss the equations for the thermal spectral region (8-14 µm).
10.1.1
Solar spectral region
For a cloud-free sky and a uniform ground of reflectance ρ, the radiance signal received at the
sensor consists of scattered solar radiation and ground reflected radiation. The scattered radiation
component is also called path radiance. It depends on the solar and viewing geometry as sketched
146
CHAPTER 10. THEORETICAL BACKGROUND
147
Figure 10.1: Radiation components, illumination and viewing geometry.
in Fig. 10.1. In case of a flat terrain, the at–sensor radiance L can be written as (Asrar 1989,
chapter 9):
L = Lp (Θv , Θs , φ) + τv (Θv )
L
Lp
τv
Eg
ρr
s
ρ Eg (0)
π 1 − ρr s
(10.1)
at-sensor radiance for surface reflectance ρ ;
path radiance ;
total ground-to-sensor atmospheric transmittance, sum of
direct τdir and diffuse τdif transmittance;
global flux on a horizontal surface, sum of direct (Edir ) and
diffuse (Edif ) flux, Eg (0) is calculated for a ground surface
with ρ = 0 ;
large scale reference background reflectance determining
the effective global flux (ρr =0.15 is used for ATCOR) ;
spherical albedo of the atmosphere, accounts for atmospheric
backscattering to the ground.
The geometry is described by the angles Θv (view zenith), and Θs , φ (solar zenith and relative
azimuth angles), compare figure 10.1. Since ρ and ρr are not known for image data and can vary
within a scene, equation (10.1) has to be solved for ρ iteratively, compare equations (10.9 - 10.15).
In a strict sense, the reflectance ρ used here should be called hemispherical-directional reflectance
factor (HDRF), because most surfaces show an anisotropic reflectance behavior characterized by
the bidirectional reflectance distribution function (BRDF, Nicodemus 1970, Slater, 1985). The
ground is illuminated hemispherically by the direct and diffuse solar flux and the reflected radiation is recorded from a certain direction, i.e., hemispherical input radiation, directional reflected
radiation. Since the reflected radiation is always measured in a small cone, the term hemisphericalconical reflectance factor HCRF is also used, but for small instantaneous field-of-view sensors,
CHAPTER 10. THEORETICAL BACKGROUND
148
”directional” is a sufficiently accurate geometrical description. However, for simplicity we will use
the abbreviation reflectance in this manual.
In spectral regions dominated by scattering effects, the terms of equation (10.1) are calculated
with the scaled DISORT option (discrete ordinate radiative transfer [51]), in regions with strong
atmospheric absorption the more accurate correlated k algorithm is used in combination with
DISORT [5]. The results are stored in look-up tables (LUT). Since MODTRAN calculates the
path radiance including the diffuse reflected ground radiation in the form
Lpath (ρ) = Lpath (0) +
τdif Eg (0) ρ/π
= Lpath (0) + τdif Eg (ρ) ρ/π
1 − ρs
(10.2)
two MODTRAN runs with surface reflectance ρ = 0 and ρr = 0.15 are required to calculate the
diffuse ground-to-sensor transmittance τdif and spherical albedo s from equation (10.2)
τdif =
[Lpath (ρr ) − Lpath (0)] π
ρr Eg (ρr )
Eg (ρ = 0)
1 − ρr s
(10.4)
Eg (0)
]/ρr
Eg (ρr )
(10.5)
Eg (ρr ) =
s = [1 −
(10.3)
For image data, the pixel reflectance ρ may differ from the background reflectance ρ¯ . In this case
the signal at the sensor consists of three components as sketched in Fig. 10.2:
• component 1: scattered radiance, path radiance,
• component 2: radiation reflected from pixel under consideration,
• component 3: radiation reflected from the neighborhood and scattered into the viewing direction (”adjacency” effect).
Only component 2 contains information on the surface properties of the pixel, the other components
have to be removed during the atmospheric correction. As detailed in [65] the adjacency radiation L3 consists of two components (atmospheric backscattering and volume scattering) which are
combined into one component in Fig. 10.2.
The radiometric calibration assigns to each digital number (DN) the corresponding at-sensor radiance L
L(k) = c0 (k) + c1 (k)DN (k)
(10.6)
where k indicates the channel number, and c0 , c1 are the calibration coefficients (offset and slope).
For sensors with adjustable gain settings the equation is
L(k) = c0 (k) + c1 (k)DN (k)/g(k)
(10.7)
where g(k) is the gain setting in channel k. The atmospheric correction has to be performed iteratively, since the surface reflectance and large-scale (0.5-1 km neighborhood) background reflectance
are not known. So three steps are employed in the ground reflectance calculation:
CHAPTER 10. THEORETICAL BACKGROUND
149
Figure 10.2: Schematic sketch of solar radiation components in flat terrain.
Step 1: The influence of the neighborhood (adjacency effect) is neglected and the surface reflectance
is obtained from
ρ(1) =
π[d2 (c0 + c1 DN ) − Lp ]
τv Eg (ρr = 0.15)
(10.8)
where the spectral band index is omitted for clarity. The factor d2 takes into account the sun-toearth distance (d is in astronomical units) since the LUTs with path radiance and global flux are
calculated for d=1 in ATCOR.
Step 2: The second step calculates the average reflectance in a large neigborhood of each pixel
(range R=0.5-1 km)
ρ¯ =
N
1 X
(1)
ρ
N 2 i,j=1 i,j
(10.9)
where N corresponds to the number of pixels for the selected range R of the adjacency effect
[58], [65]. The exact choice of R is not critical since the adjacency influence is a second-order
effect. Instead of the range-independent weighting in eq. (10.9), a range-dependent function can
be selected with an exponential decrease of the weighting coefficients [59]. The range-dependent
case requires more execution time, of course. Except for special geometries, the difference between
both approaches is small, because the average reflectance in a large neighborhood usually does not
vary much and the influence is a second-order effect.
ρ(2) (x, y) = ρ(1) (x, y) + q{ρ(1) − ρ¯(x, y)}
(10.10)
The function q indicates the strength of the adjacency effect. It is the ratio of the diffuse to direct
ground-to-sensor transmittance. The range-dependent version of eq. (10.10) is:
(2)
ρ
(1)
(x, y) = ρ
(1)
(x, y) + q{ρ
(x, y) −
ZR
0
ρ(1) (r)A(r)exp(−r/rs )dr}
(10.11)
CHAPTER 10. THEORETICAL BACKGROUND
150
Here, R is the range where the intensity of the adjacency effect has dropped to the 10% level
(i.e. r=R=2.3x rs , where rs is a scale range, typically rs =0.2-0.4 km, R=0.5-1 km), ρ(r) is the
reflectance at range r from the (x,y) position and A(r) is the area of a circular zone from r to r+dr.
Now we approximate the circular regions by square regions to obtain the discrete version of eq.
(10.11) with exponentially decreasing weighting coefficients wi :
ρ(2) (x, y) = ρ(1) (x, y) + q{ρ(1) (x, y) −
nR
X
ρ¯i wi }
(10.12)
i=1
wi =
1
n
R
P
Zri
Wi
and
Wi
Wi =
A(r)exp(−r)dr ≈
ri−1
Zri
(2r)2 exp(−r)dr
(10.13)
ri−1
i=1
ATCOR supports up to nR =5 regions. Since the sequence of moving digital low pass filters works
with square filters of size 2ri * 2ri , the area A(r) is approximated as the corresponding square
region A(r) = (2r)2 .
Step 3: it includes the spherical albedo effect on the global flux that was initially calculated with
the reference background reflectance ρr = 0.15 and is finally adapted to the scene-dependent value
ρ¯ by correcting with the difference ρ¯ − ρr :
ρ(3) (x, y) = ρ(2) (x, y)[1 − (¯
ρ(x, y) − ρr )s]
(10.14)
Radiation components in rugged terrain :
Figure 10.3 shows a sketch of the radiation components in a rugged terrain [59]. Compared
to the flat terrain one additional component is taken into account in the ATCOR model. It
is an approximation of the terrain reflected radiation. It is obtained by weighting the reflected
radiation in a 0.5 km surrounding of a pixel with the terrain view factor. The terrain view factor
is Vterrain (x, y) = 1 − Vsky (x, y) , and the sky view factor Vsky (x, y) is calculated from the DEM as
explained below. The sky view factor is normalized to 1 for a flat terrain.
The reflectance is calculated iteratively. The first step neglects the adjacency effect and starts with
(0)
a fixed terrain reflectance of ρ¯terrain = 0.1 [62] :
ρ(i) (x, y) =
π [d2 (c0 + c1 DN (x, y)) − Lp (z, Θv , φ)]
i)
(i−1)
τv (z, Θv )[b(x, y)Es τs (z)cosβ(x, y) + Ed∗ (x, y, z) + Et (z, ρr )¯
ρterrain Vterrain (x, y)]
The terms are defined as :
x, y
z
DN(x,y)
Lp (z, θv , φ)
τv (z, Θv )
τs (z)
β(x, y)
b(x,y)
Es
Ed∗ (x, y, z)
Eg (z)
horizontal coordinates, corresponding to the georeferenced pixel positions;
vertical coordinate, containing the elevation information from the DEM;
digital number of georeferenced pixel;
path radiance, dependent on elevation and viewing geometry;
ground-to-sensor view angle transmittance, direct plus diffuse components;
Sun-to-ground beam (direct) transmittance;
angle between the solar ray and the surface normal (illumination angle);
binary factor: b=1 if pixel receives direct solar beam, otherwise b=0;
extraterrestrial solar irradiance (earth-sun distance d=1 astronomical unit);
diffuse solar flux on an inclined plane (see equation 10.18);
global flux (direct plus diffuse solar flux on a horizontal surf. at elevation z);
(10.15)
CHAPTER 10. THEORETICAL BACKGROUND
151
Figure 10.3: Radiation components in rugged terrain, sky view factor.
Left: schematic sketch of radiation components in rugged terrain; 1 : path radiance; 2 : pixel
reflected radiance; 3 : adjacency radiance; 4 : reflected terrain radiance. Right: sky and terrain
view factor.
Et (z)
(0)
ρterrain
(i)
ρ¯terrain (x, y)
Vterrain (x, y)
radiation incident upon adjacent slopes;
= 0.1, initial value of average terrain reflectance;
locally varying average terrain reflectance, calculated iteratively (i=1,2,3);
terrain view factor (range 0-1).
The solar and DEM geometry is shown in figure 10.4 as well as the three solar radiation components
taken into account for rugged terrain: direct and circumsolar irradiance, and diffuse hemispherical
sky flux. It can be shown that these three components are equivalent to the direct and diffuse solar
flux components in flat terrain. In case of a shadow pixel the direct and circumsolar components
are set to zero, i.e. the binary factor b=0.
The next step iterates eq. 10.15 averaging the reflected terrain radiation over a square box of 0.5
× 0.5 km. If equation (10.15) is used with Et = Eg then three iterations are usually sufficient
to be independent of the start value of the terrain reflectance [59]. However, for highly reflective
surfaces, e.g. snow, and high terrain view factors, more than three iterations are necessary, and
(i)
a faster convergence of ρ¯terrain can be achieved with a geometric series for the terrain reflected
CHAPTER 10. THEORETICAL BACKGROUND
152
radiation Et as proposed in [79] :
(i−1)
(i)
Et = Eg
ρ¯terrain Vterrain
(i−1)
1 − ρ¯terrain V¯terrain
(10.16)
The next steps include the adjacency correction (eq. 10.9, 10.10) and the spherical albedo effect
(eq. 10.14).
Figure 10.4: Solar illumination geometry and radiation components.
If Θs , Θn , φs , φn denote solar zenith angle, terrain slope, solar azimuth and topographic azimuth,
respectively, the illumination angle β can be obtained from the DEM slope and aspect angles and
the solar geometry:
cosβ(x, y) = cosΘs cosΘn (x, y) + sinΘs sinΘn (x, y)cos{φs − φn (x, y)}
(10.17)
The illumination image cosβ(x, y) is calculated within ATCOR and stored as a separate map. The
CHAPTER 10. THEORETICAL BACKGROUND
153
diffuse solar flux on an inclined plane is calculated with Hay’s model (Hay and McKay 1985, also
see Richter 1998 for the enhancement with the binary factor b):
Ed∗ (x, y, z) = Ed (z)[bτs (z)cosβ(x, y)/cosΘs + {1 − bτs (z)}Vsky (x, y)]
(10.18)
The sky view factor can be computed from local information as Vsky (x, y) = cos2 (Θn (x, y)/2)
based on the local DEM slope angle Θn . ATCOR uses the horizon algorithm that provides a more
accurate value of the sky view factor by considering the terrain neighborhood of each pixel (Dozier
et al. 1981). Vsky and Vterrain are related by :
Vsky (x, y) = 1 − Vterrain (x, y)
10.1.2
(10.19)
Integrated Radiometric Correction (IRC)
The IRC method was published by Kobayashi and Sanga-Ngoie [40, 41] to provide a combined
atmospheric and topographic correction. The algorithm is briefly outlined here, more details can
be found in the original papers.
The first step is the orthorectification of the scene using a digital elevation model (DEM). Then
the slope and aspect maps are calculated. The next step is the calculation of the sky view factor,
see chapter 10.1.1. The original paper uses the simple equation based solely on the slope angle, but
with ATCOR a more accurate calculation based on a ray tracing can also be used in case of a steep
terrain. Then the following quantities are computed (keeping the original notation of Kobayashi in
most cases):
h0 =
(π + 2θs )
2π
(10.20)
Here θs is the solar zenith angle in radian. IF s denotes the slope map (in radian) then the simple
version of the skyview is obtained with
h = 1 − s/π
(10.21)
The cosine of the local solar zenith (illumination angle β) is given in eq. 10.17. Then the surface
radiance for each channel Ls is calculated by subtracting the path radiance Lp from the at-sensor
radiance L:
Ls (x, y) = L(x, y) − Lp (x, y, z)
(10.22)
In the ATCOR version of the IRC algorithm the path radiance varies spatially, particularly due to
the DEM height variation, while a constant value (per channel) is used in the original IRC paper.
Then a regression analysis (per channel) of Ls versus cosβ is applied to calculate the slope m and
intercept b. After defining C = m/b the topographic correction map A is calculated:
A(x, y) =
cosθs + C/h0
cosβ(x, y) + C h(x, y)/h0
(10.23)
Finally, the surface reflectance ρ is computed according to:
ρ(x, y) =
π Ls (x, y, z) A(x, y)
T (x, y, z) {Edir (x, y, z) cosθs + Edif (x, y, z)}
(10.24)
CHAPTER 10. THEORETICAL BACKGROUND
154
where T is the total ground-to-sensor transmittance, and Edir , Edif are the direct irradiance and
diffuse solar flux on the ground, respectively.
So the ATCOR version of IRC contains some improvements with respect to the original method:
the path radiance varies spatially, mainly caused by terrain height variations, possibly also due to
visibility variations, and the sky view factor can be provided from a ray tracing analysis instead of
the local slope angle.
Note: the IRC method usually performs well. However, due to the statistical evaluation of the
regression analysis unphysically large (> 1 reflectance unit) or small ( < 0) surface reflectance
values might happen for some pixels, usually in areas with topographic shadow or low local sun
elevations.
10.1.3
Spectral solar flux, reflected surface radiance
The spectral solar fluxes on the ground can be calculated by setting the parameter irrad0 = 1 in
the .inn file or using the graphical user interface. The fluxes depend on solar geometry, terrain
elevation, topography, and atmospheric conditions. For a flat terrain, ATCOR provides spectra
of the direct, diffuse, and global flux for the selected visibility / water vapor. In case of variable
visibility / water vapor the spectra are calculated for the average scene visibility / water vapor.
The direct flux is just the beam irradiance on the ground times the cosine of the local solar zenith
angle. The diffuse flux spectrum Edif is evaluated for a surface reflectance of ρ = 0, and the global
flux for ρ = 0.15, i.e., Eg = (Edir + Edif (0))/(1 − s · 0.15), where s is the spherical albedo.
The spectral band index is omitted for brevity. For a flat terrain these fluxes are provided in the
directory of the input file (e.g. ’scene.bsq’ ):
• the direct spectral flux on the ground: ’scene edir.dat’
• the diffuse spectral flux on the ground: ’scene edif.dat’ for surface reflectance ρ = 0.
• the global spectral flux on the ground: ’scene eglo.dat’ for a typical average surface reflectance
ρ = 0.15.
These spectra will already give a realistic description for a flat terrain, but they lack the dependence
on the spectral reflectance variations in the scene. Therefore, an image of the global flux is also
provided that accounts for the spatial reflectance and visibility / water vapor patterns (VIS, named
’scene eglobal.bsq’ :)
Eg (x, y) =
Edir (V IS(x, y)) + Edif (ρ = 0, V IS(x, y))
1 − s(x, y) ρ¯(x, y)
(10.25)
Here, ρ¯ indicates a spatial averaging with a filter size corresponding to the specified adjacency
range. The unit of the global flux is mW cm−2 µm−1 and it is stored as float data (32 bits/pixel).
Therefore, its file size will be twice or four times the size of the input scene if the scene is encoded
as 16bit/pixel and 8bits/pixel, respectively.
For a rugged terrain, images of the direct and diffuse fluxes will be calculated using the available
DEM information on height (z), slope and aspect (i.e. local solar illumination angle β), and
atmospheric conditions (visibility / water vapor VIS). The direct flux on the ground is :
Edir (x, y) = b(x, y) E0 Tsun (V IS(x, y, z)) cosβ(x, y)
(10.26)
CHAPTER 10. THEORETICAL BACKGROUND
155
where E0 , Tsun are extraterrestrial solar irradiance and sun-to-ground transmittance, respectively,
and b is the topographic shadow mask (0=shadow, 1=sunlit pixel).
The diffuse flux in mountainous terrain accounts for the adjacency effect and multiple reflection
effects from the surrounding topography. Using the terrain view factor Vt from the last section
and the effective terrain reflectance ρt = Vt (x, y) ρ¯(x, y) and ρ¯t = V¯t (x, y) ρ¯(x, y) the diffuse flux is
approximated as:
Edif (x, y) = Edif,f lat {b Tsun (x, y, z) cosβ/cosθs + [1 − b(x, y) Tsun (x, y, z)] Vsky (x, y)}
+ {Edir,f lat (x, y, z) + Edif,f lat (x, y, z)} ρt (x, y) / (1 − ρ¯t (x, y))
(10.27)
The first line describes the anisotropic and isotropic components of the diffuse flux, the second line
accounts for multiple terrain reflection effects.
Related quantities to the global spectral solar flux on the ground are the wavelength-integrated
global flux and the absorbed solar flux (W m−2 ). These play a role in the surface energy balance
and they are available as part of the value added channels, see chapter 7.2, equations 7.9, 7.10.
Surface reflected radiance
The ground reflected (or ground leaving) radiance per band can be obtained in addition to the
spectral solar fluxes by setting the parameter irrad0=2. It is calculated corresponding to the
surface reflectance cube ρ(x, y), named ’scene surfrad.bsq’. For a flat terrain it is:
L(surf, x, y) = E(global) ρ(x, y) / π
(10.28)
In case of a mountainous terrrain the direct and diffuse reflected radiation maps from the equations
10.26 and 10.27 are used:
L(surf, dir, x, y) = (Edir + Edif )ρ(x, y) / π
(10.29)
Again, the same output file name is used (’scene surfrad.bsq’ ).
10.1.4
Thermal spectral region
Similar to the solar region, there are three radiation components: thermal path radiance (L1 ), i.e.,
photons emitted by the atmospheric layers, emitted surface radiance (L2 ), and reflected radiance
(L3 ). The short form of the radiance equation in the thermal region can be written as [32], [24] :
L = Lp + τ ε LBB (T ) + τ (1 − ε) F/π
(10.30)
where
L
L1 = LP
τ
ε
T
LBB
F
at-sensor radiance,
thermal path radiance,
ground-to-sensor atmospheric transmittance,
surface emissivity,
surface temperature,
blackbody radiance at temperature T, weighted with the channel’s filter curve,
thermal downwelling flux on the ground.
CHAPTER 10. THEORETICAL BACKGROUND
156
Figure 10.5: Radiation components in the thermal region.
L1 = LP , L2 = τ LBB (T ), L3 = τ (1 − ) F/π .
The second term on the right-hand side of equation (10.30) is emitted surface radiance reaching
the sensor, the third term is the atmospheric radiance reflected at the surface and attenuated by
the surface-to-sensor path. The spectral band index, elevation, and angular dependence is omitted
for brevity.
The LBB (T ) term is Planck’s blackbody radiance B(λ, T ) weighted with the spectral channel
response function R(λ):
λ
R2
LBB (T ) =
B(λ, T )R(λ)dλ
λ1
λ
R2
(10.31)
R(λ)dλ
λ1
For a discrete temperature interval T = (T1 , T2 ) and increment (e.g. T1 = 270K, T2 = 330K, increment 1 K) equation (10.31) is solved numerically. Temperature and radiance are then approximated
by an exponential fit function function with channel dependent coefficients a1 , a2 :
LBB = exp[(
T =
1
− a1 )/a2 ]
T
1
a1 + a2 lnLBB
(10.32)
(10.33)
For convenience, an offset a0 is introduced with default a0 = 0. The offset term can be used to
adjust a temperature bias in a scene. Example: if scene temperatures are too low by 3K they can
be raised by setting a0 = 3.
T = a0 +
1
a1 + a2 lnLBB
(10.34)
Remark:
The computer implementation of the channel-resampled radiance equations is coded to minimize
CHAPTER 10. THEORETICAL BACKGROUND
157
spectral resampling effects [60], [61].
Temperature / emissivity separation
For a sensor with n thermal channels there are n equations of (10.30) with n+1 unknowns, namely
the n surface emissivities plus a surface temperature. So, the system of equations (10.30) is always
underdetermined. Several possibilities exist to address this problem (Gillespie et al. 1998). Four
options are offered by the satellite version of ATCOR:
• a constant emissivity (default =0.98 independent of surface cover type, 10-12 µm region) for
sensors with a single thermal channel. For user-defined sensors with multiple thermal bands
the parameter itemp band described in 4.6.1) defines the channel employed for the surface
temperature calculation.
• fixed emissivity values assigned for 3 classes for the selected surface temperature band (parameter itemp band described in 4.6.1): (soil)=0.96, (vegetation)=0.97, else =0.98 (water
and undefined class). The assignment to the vegetation / soil class is performed on-the-fly
in memory employing the vegetation index (red and NIR bands required), and the 3-class
emissivity map is available (file ’image atm emi3.bsq’, compare chapter 4.5). In the airborne
ATCOR version [69] a pre-classification with more emissivity classes can be used as already
suggested in [55].
• for multispectral thermal bands the normalized emissivity method (NEM) or adjusted NEM
are also implemented. In the NEM [23], the surface temperature is calculated for all channels with a constant user-defined emissivity, and for each pixel the channel with the highest
temperature is finally selected. In the adjusted NEM (ANEM) [12] the assigned emissivity
is surface cover dependent. Here, we define four surface cover classes (water, vegetation,
soil/dry vegetation, sand/asphalt) based on the following criteria:
– vegetation: ρnir /ρred > 2 and ρnir > 0.20 .
– soil/dry vegetation: ρnir /ρred ≥ 1.4 and ρnir /ρred < 2.0 and ρred > 0.09 .
– sand/asphalt : ρnir /ρred < 1.4 and ρred > 0.09.
– water : ρnir < 0.05 and ρ1.6µm < 0.03 .
To each class the user can assign an emissivity valid for the channel with the highest temperature. There is only one common emissivity class in case of night data or data from purely
thermal channels.
The ANEM method provides accurate channel emissivities and surface temperatures if the
classes are assigned correctly and the emissivity value assigned to the channel with the maximum temperature is close to the actual channel emissivity. Maximum surface emissivities
usually lie in the 10.5 - 13 µm region. After calculating the surface temperature, the emissivities for all channels are computed.
• for thermal band imagery with at least 5 channels the ISAC (In-Scene Atmospheric Compensation) method is available. A detailed description is given by Young et al. [89]. The
CHAPTER 10. THEORETICAL BACKGROUND
158
method does not require ancillary meteorological data or atmospheric modeling. It neglects
the downwelling thermal flux and employs the equation
L = Lp + τ ε LBB (T ) = Lp + τ Lsurf ace
(10.35)
This approximation is justified for pixels with a high emissivity close to 1, i.e. ”blackbody”
sensor for each pixel in each channel is
pixels. First, the highest brightness temperature Tmax
computed based on the at-sensor radiance L converted into brightness temperature. In the
current implementation, only channels in the spectral region 8 - 13 µm are employed for
the maximum brightness temperature search, because the spectral regions λ < 8 µm and
λ > 13 µm are strongly affected by atmospheric water vapor absorption. Next, a reference
channel is defined where most pixels with maximum brightness temperature occur. Only
those blackbody pixels are retained which have the maximum brightness temperature in this
reference channel (”most hits” method). For these selected blackbody pixels the scatterplot
sensor )
of measured at-sensor radiance L versus blackbody radiance corresponding to LBB (Tmax
is computed for each channel. This means the surface radiance of eq. 10.35 is approximated
sensor ). The final step is a least squares regression of the scatterplot
as Lsurf ace = LBB (Tmax
data L versus Lsurf ace , yielding the intercept (path radiance Lp ) and slope (transmittance
τ ) of eq. 10.35. Care has to be taken to apply the regression only to the points near the
top edge of all cluster points, but allow some margin, so the fitting line is allowed to sink
by an amount of the sensor noise equivalent spectral radiance (NESR). The quality of the
regression is significantly increased by allowing only those pixels in the scatterplot that had
their maximum temperatures in the reference channel.
Two comments: first, because of the involved assumptions, the obtained intercept is not
the physical path radiance, and the slope not the physical atmospheric transmittance. Both
quantities may be negative in some channels, therefore they are referred to as unscaled path
(u)
radiance Lp and unscaled transmittance τ (u) . They might be rescaled to proper atmospheric
path radiance and transmittance spectra, e.g. using a radiative transfer code. Second: the
ISAC method requires an adequate spread in surface temperatures in the scene, and surface
temperatures higher than the atmospheric radiation temperature. So, results for night-time
imagery will likely be degraded.
The compensated unscaled surface radiance spectrum is calculated as
(u)
(u)
Lsurf ace (λ) =
L(λ) − Lp (λ)
τ (u) (λ)
(10.36)
and the unscaled ISAC surface emissivity can be obtained with
(u)
isac (λ) = Lsurf ace (λ) / LBB (λ, Tref )
(10.37)
where Tref is the brightness temperature image in the reference channel. The compensated
(u)
surface radiance spectrum Lsurf ace (λ) can be converted into the equivalent compensated
brightness temperature spectrum where most of the atmospheric absorption features are
removed. Both the compensated surface radiance and compensated brightness temperature
are spectrally consistent with the data and represent the best estimate for the spectral shape.
CHAPTER 10. THEORETICAL BACKGROUND
159
The emissivity spectrum isac (λ) may exceed the value 1 in certain channels if the maximum
brightness temperature of a pixel does not occur in the selected reference channel. However, a
common reference channel is needed in this method to obtain a consistent pixel-independent
(u)
spectrum of unscaled path radiance Lp and transmittance τ (u) .
10.2
Masks for haze, cloud, water, snow
A useful first step before executing an atmospheric correction is the calculation of a pixel map for
haze, cloud, water snow, etc. Such a pre-classification has a long history in atmospheric correction
methods [37, 38, 55, 56, 57, 39, 44]. It is also employed as part of NASA’s automatic processing
chain for MODIS [45] using the classes land, water, snow/ice, cloud, shadow, thin cirrus, sun glint,
etc. A similar approach is taken here.
The calculation is done ”on-the-fly” and if the scene is named ”scene.bsq”, then the corresponding
map is named ”scene out hcw.bsq”. There is also the possibility to provide this information from
an external source: if a file ””scene hcw.bsq” exists in the same folder as the ”scene.bsq” then this
information is taken and the internal ATCOR calculations for this map are skipped. In this case,
the coding of the surface types has to agree with the ATCOR class label definition, of course, see
Table 10.1. This file is written if the corresponding flag is set to 1, see chapter 9.3 and figure 5.9
in chapter 4.
label
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class
geocoded background
shadow
thin cirrus over water
medium cirrus over water
thick cirrus over water
land
saturated (blue/green band)
snow / ice
thin cirrus over land
medium cirrus over land
thick cirrus over land
thin haze over land
medium haze over land
thin haze over water
medium haze over water
cloud over land
cloud over water
water
Table 10.1: Class labels in the hcw file.
Depending on the available spectral channels, it may not be possible to assign certain classes. Table
10.1 contains one class for cloud (over land, meaning water cloud), whereas the low optical thickness cloud is put into the thin and medium thickness haze class. Thin and medium haze can often
be corrected successfully. Of course, there is no clear distinction between thick haze and cloud.
CHAPTER 10. THEORETICAL BACKGROUND
160
We take a pragmatic view, and if the haze removal is successful in areas with thick haze, then
these pixels can be included in the haze mask. Since this is not clear at the beginning, it might
be necessary to run the program twice, with and without haze removal. A check of the results will
reveal whether the haze removal was successful. ATCOR contains a number of criteria to assess
the probability of a successful haze removal, and will switch off the haze option if the chances are
not good. This automatic haze termination works in most cases, but a success cannot always be
guaranteed. There are three cirrus classes: thin, medium, and thick. Thin and medium cirrus can
be included in the cirrus removal. The classes are currently defined with the following criteria:
Water class:
If the surface elevation of a pixel is lower than 1.2 km above sea level, then a water pixel has to
fulfill the criteria:
ρ∗ (blue) ≤ 0.20
and
ρ∗ (N IR) < ρ∗ (green)
and
ρ∗ (blue) > ρ∗ (green) − 0.03
ρ∗ (1.6µm) < Twater,SW IR1
(10.38)
where Twater,SW IR1 is the water threshold reflectance in the SWIR1 band (around 1.6 µm) as defined in the preference parameter file, see chapter 9.3. Basically, the gradient of the apparent water
reflectance has to be negative.
If the pixel elevation is higher than 1.2 km, the criterion of a negative gradient for the apparent reflectance does not properly work (as the path radiance in the visible, especially in the blue, becomes
small), and the following criterion based on surface reflectance instead of apparent reflectance is
used:
ρ(N IR) ≤ |Twater,N IR |
and
ρ(SW IR1) ≤ |Twater,SW IR1 |
(10.39)
where Twater,N IR is the water reflectance threshold for the NIR band (around 850 nm). Equation
10.39 is also applied if any threshold Twater,N IR or Twater,SW IR1 is set to a negative value. In this
case the elevation criterion (pixel below 1.2 km) is overruled.
Saturated pixels:
These pixels fulfill the criterion
DN (blue) ≥ Tsaturation
(10.40)
where DN (blue) is the digital number in a blue band (around 470 nm) and the threshold Tsaturation
is defined in the preference parameter file. If a blue band does not exist, a green band (around 550
m) is used as a substitute. If a green band also does not exist, a red band (around 650 nm) is used.
Tsaturation = b · encoding, default b=0.9, e.g. 0.9*255=230 for 8 bit sensors with encoding=255.
The value b=0.9 is used as default instead of the obvious b=1.0, because saturation or nonlinear
effects often occur at these lower radiance levels.
As saturation usually occurs in the blue-to-red part of the spectrum, channels in this region are
checked and assigned to the class ’saturated’, false color coded red in the ”* out hcw.bsq” file.
However, the ”* atm.log” file contains the percentage of saturated pixels for each channel.
Cloud over land:
CHAPTER 10. THEORETICAL BACKGROUND
161
Pixels must satisfy the conditions:
ρ∗ (blue) > Tc
and
ρ∗ (red) > 0.15 and
ρ∗ (N IR) > 0.8 ρ∗ (red)
and
and
ρ∗ (N IR) / ρ∗ (red) < 2
ρ∗ (N IR) / ρ∗ (SW IR1) > 1
and
N DSI < 0.7
or
DN (blue) > Tsaturation
(10.41)
where ρ∗ (blue) is the apparent reflectance in a blue band, Tc is the cloud threshold as defined in
the preference parameter file, and DN (blue) is the corresponding digital number. If no blue band
is available, a green band (around 550 nm) is taken as a substitute. If no green band exists, a red
band (around 650 nm) is taken. NDSI is the normalized difference snow index:
N DSI =
ρ∗ (green) − ρ∗ (SW IR1)
ρ∗ (green) + ρ∗ (SW IR1)
(10.42)
Note that saturated pixels in visible bands are automatically counted as cloud although they might
be something else (e.g., snow, or a specular reflection from a surface). If a thermal band exists, the
following cloud criterion must also be fulfilled:
(1 − ρ∗ (SW IR1)) Tbb < 225 (Kelvin)
and exclude
Tbb > 300 (Kelvin)
(10.43)
where Tbb is the at-sensor blackbody temperature in the selected thermal band.
Cloud over water:
The following criteria have to be fulfilled:
0.20 < ρ∗ (blue) < 0.40 ,
ρ∗ (N IR) < ρ∗ (green) ,
ρ∗ (green) < ρ∗ (blue)
ρ∗ (SW IR1) < 0.15 ,
N DSI < 0.2
(10.44)
For optically thick clouds it is not possible to distinguish clouds over water from clouds over land
if only spectral criteria are used.
Cloud shadow:
Pixels must satisfy the conditions:
0.04 < ρ∗ (N IR) < 0.12
and
ρ∗ (SW IR1) < 0.20
(10.45)
and they should not belong to the water class. This may also include building shadow pixels.
Snow / ice:
Pixels must satisfy the conditions:
ρ∗ (blue) > 0.22 and
N DSI > 0.6
and
DN (blue) < Tsaturation
(10.46)
The condition DN (blue) < Tsaturation means that saturated pixels in the blue spectral band are not
included in the snow mask, instead they are put into the cloud class. If no blue band exists, a green
band (around 550 nm) is taken. However, if the blue or green band is saturated and N DSI > 0.7
then this pixel is assigned to the snow class because of the very high probability. If a green band
and a SWIR2 band (around 2.2 µm) exist the following relationships are used:
DN (blue) < Tsaturation
or
∗
(ρ (green) > 0.22 ,
and ( (ρ∗ (blue) > 0.22 ,
N DSI > 0.25 ,
∗
∗
N DSI > 0.6)
ρ (SW IR2)/ρ (green) < 0.5 ) )
(10.47)
CHAPTER 10. THEORETICAL BACKGROUND
162
Again, if the blue or green band is saturated and N DSI > 0.7 then the snow class is assigned.
Cirrus over land:
The apparent reflectance is calculated in the cirrus band (1.38 µm) and additionally in a band
around 1.24µm. If the latter does not exist a NIR channel is used.
Thin cirrus over land is calculated with
1.0% < ρ∗ (cirrus) < 1.5%
(10.48)
employing the percent reflectance unit. Medium thickness cirrus is calculated as
1.5% < ρ∗ (cirrus) < 2.5%
(10.49)
and the thick cirrus class consists of pixels with
ρ∗ (cirrus) ≥ 2.5%
(10.50)
and the pixels have to belong to the land class.
Cirrus over water:
The same spectral criteria (eq.’s 10.48, 10.49, 10.50) hold, but the pixels have to belong to the
water class.
Haze over land: see chapter 10.5.2
The the mean of the tasseled cap transformation (TC) is calculated. Clear pixels are those with
T C < mean(T C) and ρ∗ (blue) < Tc (cloud over land threshold) and ρ∗ (N IR) > Twater (N IR) (water reflectance threshold, defined in ”preference parameters.dat”). Next, the mean and standard
deviation σ of the HOT transformation are calculated. Pixels are assigned to the compact haze
mask if HOT > mean(HOT ), and to the large haze mask if HOT > mean(HOT ) − 0.5 σ(HOT ).
Then the HOT histogram of all haze pixels is calculated. Pixels with values less than 40% of the
cumulative histogram are assigned to thin-medium haze, pixels with higher values to medium-thick
haze. This distinction is arbitrary and has no effect on the subsequent processing.
Haze over water:
Pixels must belong to the water mask, and the NIR apparent reflectance ρ∗ (N IR) must be greater
than the NIR clear water threshold Tclearw aterN IR defined in the preference parameter file (chapter
9.3). Thin haze over water is defined as:
Tclearw aterN IR ≥ ρ∗ (N IR) ≥ 0.06
(10.51)
Medium haze over water is defined as:
0.06 < ρ∗ (N IR) ≤ T2
(10.52)
where T2 (default=0.12) is another editable parameter in the preference file. The method of haze
removal over water is described in chapter 10.5.3. The same technique is also employed to remove
sun glint.
CHAPTER 10. THEORETICAL BACKGROUND
10.3
163
Quality layers
The previous section defined a coarse pixel classification which is useful for an atmospheric correction. In addition, it supports an assessment of the quality of the processing. For example, a
large error in the radiometric calibration could cause a scene classification with all pixels labeled
as water. In this case, a user can immediately identify the problem. Of course, a more detailed
assessment is possible with an analysis of the reflectance spectra. Nevertheless, the classification
map (land, water, haze, cloud, etc) is a useful product and the quality of the atmospheric correction
may depend on the correct class assignment, at least for some classes.
The previous (haze, cloud, water, land) pixel classifyer is a binary decision: a pixel belongs to a
certain class or not. In reality the decision is typically not unique and a class assignment has only
a certain probability. As the absolute probability of a class assignment is very difficult to assess,
we define three probability levels: low, medium, and high coded 30, 60, 90, respectively. These
numbers might be interpreted as a percent probability, but the numbers are relative and arbitrary.
Currently there are three quality layers, cloud, water, and snow, which are solely calculated with
spectral criteria. The quality file is written if the corresponding flag is set to 2, see chapter 9.3 and
figure 5.9 in chapter 4.
Cloud probability:
• low cloud probability (coded 30):
ρ∗ (blue) > 0.15 and
and
ρ∗ (red) > 0.15 and
ρ∗ (N IR) > 0.8 ρ∗ (red)
and
and
N DSI < 0.7
ρ∗ (N IR) / ρ∗ (red) < 2
ρ∗ (N IR) / ρ∗ (SW IR1) > 1
or
DN (blue) > Tsaturation
(10.53)
where ρ∗ (blue) is the apparent reflectance in a blue band, and DN (blue) is the corresponding
digital number. If no blue band is available, a green band (around 550 nm) is taken as a
substitute. If no green band exists, a red band (around 650 nm) is taken. Note that saturated
pixels in visible bands are counted as cloud although they might be something else (e.g., snow,
or a specular reflection from a surface). Only saturated pixels with a very high N DSI > 0.7
are assigned to the snow class.
• medium cloud probability (coded 60): same as for low probability, but with
ρ∗ (blue) > 0.25
and
ρ∗ (red) > 0.18
(10.54)
This is similar to the standard cloud assignment in the ”* out hcw.bsq” file where ρ∗ (blue) >
Tc , Tc = 0.25 (or 25%), and ρ∗ (red) > 0.15. The 25% reflectance threshold in the blue (or
green) band is the default value in the preference parameter file.
• high cloud probability (coded 90): same as for medium probability, but with
ρ∗ (blue) > 0.35
and
ρ∗ (red) > 0.25.
If a thermal band exists, the relationships 10.43 must also be fulfilled.
Water probability:
(10.55)
CHAPTER 10. THEORETICAL BACKGROUND
164
The criteria for the water class are described in the previous section. The following water probability
rules are employed:
• low water probability (coded 30): water pixels fulfilling the above criteria (eq.’s 10.38, 10.39).
This is the water assignment in the ”* out hcw.bsq” file.
• medium water probability (coded 60): same as for low probability, but with a more stringent
NIR reflectance threshold. If no SWIR1 band (around 1.6 µm) exists, the criterion is:
ρ∗ (N IR) ≤ 0.04
(10.56)
Note: the default threshold Twater,N IR is 0.05 (or 5% in the reflectance percent unit), defined
in the preference parameter file, yielding more low probability water pixels than medium
probability pixels (eq. 10.56). If a SWIR1 band exists the apparent NIR reflectance threshold is relaxed (first line of eq. 10.57) because of the additional SWIR1 surface reflectance
threshold.
ρ∗ (N IR) ≤ 0.05
and
ρ(SW IR1) ≤ 0.03
or
∗
ρ (N IR) ≤ 0.03
or
ρ(SW IR1) ≤ 0.03
(10.57)
The relationships on the second line of eq. 10.57 assign the water probability based on the
smaller reflectance value in the NIR or SWIR1.
• high water probability (coded 90): same as for medium probability, but with lower NIR,
SWIR1 thresholds.
ρ∗ (N IR) ≤ 0.03
∗
ρ (N IR) ≤ 0.03
(no SW IR1 band)
ρ(SW IR1) ≤ 0.02
or
(10.58)
Note: the default threshold Twater,SW IR1 is 0.03 (or 3% in the reflectance percent unit),
defined in the preference parameter file.
Snow /ice probability:
The criteria for the snow-ice class are described in the previous section. As mentioned before, if
pixels are saturated in the blue-green spectral bands they are counted as cloud unless the N DSI >
0.7. The following probability rules are employed for snow:
• low snow/ice probability (coded 30):
ρ∗ (blue) > 0.22 and
N DSI > 0.4
and
DN (blue) < Tsaturation
(10.59)
If no blue band exists, a green band is used as a substitute. If a green band and a SWIR2
band exist, the rules are:
DN (blue) < Tsaturation
or
∗
(ρ (green) > 0.22 ,
and
( (ρ∗ (blue) > 0.22 ,
N DSI > 0.25 ,
∗
∗
N DSI > 0.4)
ρ (SW IR2)/ρ (green) < 0.5 ) )
(10.60)
CHAPTER 10. THEORETICAL BACKGROUND
165
• medium snow/ice probability (coded 60): same as for low probability, but with a more stringent NDSI threshold of 0.6. This is the snow assignment in the ”hcw.bsq” file.
ρ∗ (blue) > 0.22 and
N DSI > 0.6
and
DN (blue) < Tsaturation
(10.61)
If no blue band exists, a green band is used as a substitute. If a green band and a SWIR2
band exist, the rules are:
DN (blue) < Tsaturation
or
and
( (ρ∗ (blue) > 0.22 and
∗
(ρ (green) > 0.22 and
∗
N DSI > 0.6)
∗
ρ (SW IR2)/ρ (green) < 0.3 ) )
(10.62)
This is very similar to the snow assignment in the ”hcw.bsq” file, except for the threshold for
ρ∗ (SW IR2)/ρ∗ (green).
• high snow/ice probability (coded 90): same as for medium probability, but with a more
stringent NDSI threshold of 0.7.
ρ∗ (blue) > 0.22 and
N DSI > 0.7
and
DN (blue) < Tsaturation
(10.63)
If no blue band exists, a green band is used as a substitute. Again, if a green band and a
SWIR2 band exist, the rules are:
DN (blue) < Tsaturation
or
10.4
∗
and
( (ρ∗ (blue) > 0.22 and
(ρ (green) > 0.22 and
∗
N DSI > 0.7)
∗
ρ (SW IR2)/ρ (green) < 0.2 ) )
(10.64)
Standard atmospheric conditions
Standard conditions comprise scenes taken under a clear sky atmosphere. This means the visibility
(aerosol optical thickness) can be assumed as constant over a scene, or it might vary within a
certain range (excluding haze) and a visibility map can be calculated. It also includes situations
with constant or spatially varying water vapor column contents.
10.4.1
Constant visibility (aerosol) and atmospheric water vapor
This is the easiest case for atmospheric correction. Still, it can often be applied if homogeneous
atmospheric conditions exist. These might be encountered for small area scenes, i.e., high spatial
resolution imagery. If the sensor has no channels in atmospheric water vapor regions, results of
atmospheric correction are not sensitive with respect to the selected water vapor content, and a
climatological value (e.g., midlatitude summer, US standard, or tropical water vapor profile) is
usually sufficient. For hyperspectral instruments, the processing has to include the image-derived
pixel-by-pixel water vapor map.
The program performs a check whether the specified visibility leads to negative reflectance pixels
for dark surfaces in the red band (660 nm, vegetation) and NIR band (850 nm, water). If this
is the case, the visibility is iteratively increased (up to VIS=80 km) to reduce the percentage of
negative reflectance pixels below 1% of the scene pixels. During an interactive ATCOR session
the user is notified, and can continue with the recommended visibility update or with the initial
visibility. During batch mode operation the program continues with the updated visibility and the
CHAPTER 10. THEORETICAL BACKGROUND
166
initial value is disregarded. A corresponding notice is given in the ”*atm.log” output file. The final
iterated visibility depends slightly on the initial value, because a coarse set of visibility grid points
is used to restrict the number of iterations (n ≤ 8), see Table 10.2.
Example 1: start VIS = 15 km, potential visibility iterations = 19, 24, 34, 44, 54, 64, 74 km, and
the next step of 84 km is reset to VIS = 80 km. If the number of negative reflectance pixels (red,
NIR bands) is already less than 1% of the number of scene pixels for VIS = 34 km, the program
will terminate the visibility loop after three iterations.
Example 2: start VIS=23 km, potential visibility iterations = 28, 38, 48, 58, 68, 78 km, and the
next step of 88 km is reset to VIS = 80 km. If the criterion (threshold of 1% negative reflectance
pixels) is already fulfilled for VIS = 28 km, the program will terminate the visibility loop after the
first iteration. If the criterion is fulfilled for the start visibility, no iteration is executed.
The upper visibility threshold of 80 km is a trade-off: although higher visibilities are possible they
are not very likely, and even if a situation with a higher visibility (say VIS=120 km) is encountered,
results of a calculation with vis = 80 km do not differ much from the results with VIS = 120 km.
So the iteration capability is most important for low visibility start values.
visibility [km]
5 - 15
15 - 20
20 - 28
28 - 60
60 - 80
vis. increment [km]
3
4
5
10
10, but max VIS=80 km
Table 10.2: Visibility iterations on negative reflectance pixels (red, NIR bands).
10.4.2
Aerosol retrieval and visibility map
If a sensor has the appropriate spectral bands the aerosol type and visibility or optical thickness of
the atmosphere can be derived, provided the scene contains reference areas of known reflectance behavior (Kaufman and Sendra 1988, Kaufman et al. 1997). The minimum requirements are spectral
bands in the red and near IR. If the scene contains dense dark vegetation (coniferous type) the reflectance values in the red band can be obtained from a correlation with the SWIR band reflectance
as detailed below. The visibility of each reference pixel can then be calculated in the red band as
the intersection of the modeled at-sensor radiance curve with the measured radiance, see figure 10.6.
The measured radiance for a reference pixel of digital number DN is L = c0 + c1 DN , which is
a constant value indicated by the dashed line in figure 10.6. The curve indicates the modeled
radiance. It employs the reflectance of the reference surface (e.g., ρref = 0.02) and uses values
of path radiance, atmospheric transmittance, and global flux for the current solar and viewing
geometry stored in precalculated LUTs.
Automatic masking of reference areas (1.6 or 2.2 µm band required, or at least red/NIR bands)
If the sensor has a SWIR band (at 1.6 or 2.2 µm), then the scene can be searched for dark pixels in
this band and a correlation of the SWIR reflectance with the reflectance in the red and blue band
CHAPTER 10. THEORETICAL BACKGROUND
167
Figure 10.6: Schematic sketch of visibility determination with reference pixel.
can be employed to estimate the visibility automatically (Kaufman et al. 1997). For this purpose,
we use a modified version of the original idea for the following algorithm.
If a SWIR band exists the SWIR reflectance is calculated assuming a visibility of 23 km (instead of
the original version of top of atmosphere reflectance). Then, water pixels are excluded by employing
only those pixels with SWIR reflectance values above 1% and an NDVI > 0.1. For the 2.2 µm band
the upper threshold of the reflectance of the dark pixels is selected as 5%. If the number of reference
pixels is less then 1% of the image pixels, then the upper threshold is increased to 10% or finally
12%. If a 1.6 µm band exists, but no 2.2 µm band, the corresponding upper thresholds are selected
as 10% and 15%, or finally 18%, respectively. The reflectance ratios for the red and blue band are
then calculated as :
ρred = 0.5 ρ2.2
ρred = 0.25 ρ1.6
and
and
ρblue = 0.5 ρred
ρblue = 0.5 ρred
(10.65)
(10.66)
This situation is sketched in figure 10.7. The correlation factor of 0.5 between the 2.2 µm and the
red region is not a universal constant, but may typically vary between 0.4 and 0.6. The correlation
actually also works for dark soils. So the dark pixels may also include soil areas. For narrow band
hyperspectral sensors a band close to 2.13 µm is used instead of a 2.20 µm band.
The red band is then used to calculate the visibility (compare figure 10.6) as the intersection of
the measured radiance with the simulated visibility-dependent at-sensor radiance curve. Since the
same visibility is employed for the blue spectral band this provides an opportunity to adjust the
spectral behavior of the path radiance (which is essentially the aerosol path radiance, since the
Rayleigh path radiance is known) in the blue spectral region.
Lupdate
p,blue = Lblue − τblue ρblue Eg,blue /π
The question of an automatic aerosol type calculation is addressed next.
(10.67)
CHAPTER 10. THEORETICAL BACKGROUND
168
Figure 10.7: Correlation of reflectance in different spectral regions.
Aerosol type estimation
After calculation of the scene path radiance in the blue and red region (as total minus reflected
radiance, using the average values obtained for the dark reference pixels) the ratio of Lp (blue, scene)
to Lp (red, scene) can be compared to the corresponding ratio for the MODTRAN standard aerosols
(rural, urban, maritime, desert) :
dp =
Lp (blue, scene)/Lp (red, scene)
Lp (blue, M ODT RAN )/Lp (red, M ODT RAN )
(10.68)
The aerosol type for which the double ratio (dp ) is closest to 1 is the best approximation for
the scene. It approximates the corresponding MODTRAN aerosol type. However, some fine
tuning is subsequently performed to be able to modify the wavelength behavior of the path radiance compared to the standard aerosol types. If Lp (blue, scene) deviates more than 5% from
Lp (blue, M ODT RAN ) then Lp (blue, scene) is used as the valid path radiance. In addition, the
path radiance for any other bands in the blue to red region is linearly re-scaled with the factor
Lp (blue, scene)/Lp (blue, M ODT RAN ), see Figure 10.8. Here, the path radiance in the red band
is used as a fixed tie point. For wavelengths greater than 700 nm a posssible typical 10% difference in path radiance between the selected aerosol type (after fine tuning) and the actual aerosol is
usually not important, because path radiance contributes only a small fraction to the total radiance.
If the sensor has no blue spectral band, but a green band, than the green band is substituted and
for the dense dark vegetation the surface reflectance relationship is used:
ρ(green) = 1.3 ρ(red)
(10.69)
Now eq. 10.67 is again employed for the green band instead of the blue band to calculate the path
radiance, the best match to a MODTRAN aerosol type, and possibly a fine tuning of the path
radiance.
Aerosol retrieval for VNIR sensors
If no SWIR bands exist, but at least a red band (around 660 nm) and a NIR band (around 850 nm)
a different approach has to be taken, see reference [64] for details. It starts with the assumption of
CHAPTER 10. THEORETICAL BACKGROUND
169
Figure 10.8: Rescaling of the path radiance with the blue and red band.
After subtraction of the reflected radiance from the total radiance in the blue band the remaining
signal is the updated path radiance in the blue band. The path radiance of bands in the blue to
red region is then rescaled with interpolation.
average clear atmospheric conditions (visibility VIS=23 km) to calculate the surface reflectance in
the red and NIR bands which is appropriate for situations of clear atmospheres (VIS = 15 - 40 km).
The second step derives a mask of dark vegetation pixels using the ratio vegetation index rvi of
the red and near-infrared surface reflectance, rvi = ρnir /ρred , and multiple reflectance thresholds:
• The mask pixels have to fulfill: rvi ≥ 3 and ρnir ≥ 0.10 and ρnir ≤ 0.25 and ρred ≤ 0.04 .
Water pixels are automatically excluded from this mask because of the ρnir ≥ 0.10 condition, and
soil pixels are excluded with the combination of all four conditions. If the percentage of reference
pixels is smaller than 2% of the scene the search is iterated with VIS=60 km (covering the very
clear conditions of visibility = 40 - 100 km). Again, if the percentage is smaller than 2%, the search
is iterated with VIS=10 km to cover higher aerosol loadings (VIS = 8 - 15 km). Each visibility
iteration is supplemented with an iteration of the threshold ρred which is decreased in steps of 0.005
down to ρred = 0.025 to include only the darkest vegetation pixels (see [64] for details). Currently,
the algorithm terminates if less than 2% reference pixels are found after these two iterations. In this
case, the user has to employ the constant visibility option specifying the value of the visibility for
the scene. During batch mode operation the program takes the specified visibility (from the ”.inn”
file). Then a check for negative reflectance pixels is performed with dark pixels in the red band
(660 nm, vegetation) and the NIR band (850 nm, water), and the visibility is iteratively increased
(up to VIS=60 km) to reduce the percentage of negative reflectance pixels below 1% of the scene
pixels. A corresponding notice is given in the ”*atm.log” output file.
The third step calculates the surface reflectance in the red band as a fraction α of the NIR band
reflectance:
ρred = α ∗ ρnir = 0.1 ∗ ρnir
(10.70)
Similar to the empirical SWIR relationships the coefficient α = 0.1 is an average empirical value
yielding results in close agreement with the SWIR method in many cases. However, deviations
from the nominal value α = 0.1 can vary about 30% depending on biome. Before the final step of
atmospheric correction takes place the visibility of non-reference pixels in the scene can be set to
CHAPTER 10. THEORETICAL BACKGROUND
170
the average value of the reference pixels or a spatial interpolation can be applied.
The visibility calculated for each reference pixel (range 5 - 190 km in ATCOR) is converted into
an integer, called visibility index vi, with range 0-182. The visibility index is closely related to the
total optical thickness δ at 550 nm, the equidistant optical thickness spacing is 0.006 for a ground
at sea level, and smaller for increasing elevations.
δ = 0.185 + 0.006 ∗ vi
(10.71)
It is easy to calculate the aerosol optical thickness (AOT) from a known total optical thickness by
subtracting the Rayleigh optical thickness and a very small trace gas optical thickness, compare
Fig. 2.1 in chapter 2.
With the MODTRAN code the AOT (at 550 nm) can be calculated from a given visibility VIS
(km) as
AOT = exp (a(z) + b(z) ln(V IS))
(10.72)
where z is the surface elevation, and a(z), b(z) are coefficients obtained from a linear regression of
ln(AOT ) versus ln(V IS).
Figure 10.9: Optical thickness as a function of visibility and visibility index.
CHAPTER 10. THEORETICAL BACKGROUND
10.4.3
171
Water vapor retrieval
A water vapor retrieval can be included after the aerosol retrieval because the aerosol retrieval
does not use water vapor sensitive spectral bands, but the water vapor algorithm (employing bands
around 940 or 1130 nm) depends on aerosol properties. The water vapor retrieval over land is
performed with the APDA (atmospheric precorrected differential absorption) algorithm [75]. In its
simplest form, the technique uses three channels, one in the atmospheric water vapor absorption
region around 940 or 1130 nm (the ”measurement” channel), the others in the neighboring window
regions (”reference” channels). The depth of the absorption feature is a measure of the water vapor
column content, see figure 10.10.
In case of three bands the standard method calculates the water vapor dependent APDA ratio as :
RAP DA (ρ, u) =
L2 (ρ2 , u) − L2,p (u)
w1 (L1 (ρ1 ) − L1,p ) + w3 (L3 (ρ3 ) − L3,p )
(10.73)
where the index 1 and 3 indicates window channels (e.g. in the 850-890 nm region and 1010-1050
nm region), respectively. Index 2 indicates a channel in the absorption region (e.g., 910-950 nm).
L and Lp are the total at-sensor radiance and path radiance, respectively. The symbol u indicates
the water vapor column. The weight factors are determined from
w1 = (λ3 − λ2 )/(λ3 − λ1 )
and
w3 = (λ2 − λ1 )/(λ3 − λ1 )
(10.74)
Figure 10.10: Reference and measurement channels for the water vapor method. The at-sensor radiance
is converted into an at-sensor reflectance.
The problem is the estimation of the surface reflectance ρ2 in the absorption band (eq. 10.73). The
technique tries to estimate the reflectance ρ2 with a linear interpolation of the surface reflectance
values in the window channels (ch. 1, 3) that are not or only slightly influenced by the water vapor
content: Therefore, the reflectance ρ2 is calculated as
ρ2 = w1 ρ1 + w3 ρ3
(10.75)
Then equation (10.73) can be written as
RAP DA (u) =
ρ2 τ2 (u)Eg2 (u)
τ2 (u)Eg2 (u)
=
ρ2 τ2 (u = 0)Eg2 (u = 0)
τ2 (u = 0)Eg2 (u = 0)
(10.76)
CHAPTER 10. THEORETICAL BACKGROUND
172
where Eg2 (u) is the global flux on the ground for the measurement channel (index 2). ATCOR
employs 4 to 5 water vapor columns (u=0.4, 1.0, 2.0, 2.9, 4.0 cm, sea-level-to space geometry) to
calculate an exponential fit function
√
RAP DA (u) = exp(−α + β u)
(10.77)
which can be solved for the water vapor column u , see Fig. 10.11, where the diamonds in the
figure mark the calculated water vapor grid points (u= 0.4, 1.0, 2.0, 2.9 cm) :
u=(
α + lnRAP DA 2
)
β
(10.78)
Figure 10.11: APDA ratio with an exponential fit function for the water vapor.
Equations (10.73, 10.75 to 10.78) are iterated, starting with u=1.0 cm, calculating RAP DA , updating u, Li,p (u), ρ1 , ρ3 and repeating the cycle. A minimum of two channels (one reference, one
measurement channel) is required. The advanced APDA method can take into account multiple
absorption channels in the 910-960 nm and 1110-1150 nm regions. Two water vapor retrieval
algorithms are available in ATCOR (compare chapter 9.4, parameter iwv model = 1, 2):
1. The water vapor maps with the smallest standard deviation in the 940 nm and 1130 nm region
are selected. Finally, if both regions are available, the average of these two water vapor maps
is taken (parameter iwv model=1 in the ”.ini” file).
2. A linear regression ratio (LIRR) is applied to multiple bands (parameter iwv model=2). This
water vapor map might be more accurate, because the regression reduces sensor noise and
may partially compensate calibration problems in lucky cases. Although the water vapor map
might be less noisy, the retrieved surface reflectance spectrum will always retain any channel
calibration problems.
Remarks:
CHAPTER 10. THEORETICAL BACKGROUND
173
1. The APDA algorithm is relatively fast. Its disadvantage is that it is not stable numerically for
very low reflectance targets (water, shadow regions). The transmittance slope ratio method
[72] might work better in these cases, so it is an interesting alternative water vapor algorithm.
However, since the required processing time is much higher than for the APDA method, it is
currently not implemented in the ATCOR environment. In addition, the method requires data
with a very accurate spectral and radiometric calibration, otherwise its potential advantage
will be lost.
2. Five water vapor grid points at 0.4, 1.0, 2.0, 2.9, and 4.0 cm are sufficient to cover the 0.5 5.0 cm range with an accuracy of about 5-10 % [66].
10.5
Non-standard conditions
The non-standard situations refer to bidirectional reflectance (BRDF) effects and scenes with a
substantial amount of haze and shadow areas. Although bidirectional surface reflectance effects
are independent of the atmospheric conditions, the subject is included here, because the isotropic
reflector is used for the standard conditions. We present some empirical methods of BRDF correction in flat and rugged terrain. The non-standard atmospheric conditions treat the haze removal
and de-shadowing employing spectral and statistical algorithms.
10.5.1
Empirical methods for BRDF correction
ATCOR offers two different methods of correcting BRDF effects. The first method is mainly intended for flat terrain and normalizes the off-nadir reflectance values to the corresponding nadir
values. The second method is exclusively dedicated to rugged terrain imagery. The reflectance
values of areas with low local sun elevation angles, i.e. large local solar zenith angles, are often
overcorrected by the assumption of isotropically reflecting surfaces, and the method reduces these
high overcorrected values depending on the illumination and/or viewing angles. In some cases of
rugged terrain imagery it is useful to apply both methods of empirical BRDF correction.
1. Nadir normalization method
A simple algorithm was implemented as part of the ATCOR package to normalize the scan angle
dependent brightness values to the nadir value. It is recommended to apply the method to imagery
after atmospheric correction, i.e., to reflectance data. However, if only the across-track illumination
gradients shall be removed without any further atmospheric correction, the algorithm can also be
applied to radiance (DN) data. In this case, the brightness gradient may be caused by a combination of surface BRDF and atmospheric BRDF (left/right asymmetry in path radiance).
The algorithm is intended for large field-of view sensors (minimum FOV=20o ). It computes the column means with a certain angular sampling interval (1o or 3o ). The input image may be geocoded,
or not. If it is not geocoded the total field-of-view FOV corresponds to the number n of across-track
image pixels per line. If geocoded, the scan angle for each pixel must be provided in a separate file
(” sca”). It contains the scan angle in degree scaled with a factor of 100, and coded with 16 bits per
pixel. This definition is taken from the airborne ATCOR/PARGE interface (Schl¨apfer and Richter
2002). Scan angles on the right hand side with respect to flight heading are defined as negative,
those on the left side as positive, e.g., a value of -2930 represents a scan angle of 29.3◦ on the right
side.
CHAPTER 10. THEORETICAL BACKGROUND
174
The nadir region is defined here as the ±3o scan angle range. Usually, a 3o angular sampling
interval, from +3o to +FOV/2 on the left side and -3o to -FOV/2 on the right side, is adequate,
except for geometries close to the hot spot geometry. In the latter case, a 1o sampling interval can
be selected.
If ¯bnadir denotes the averaged brightness value for the nadir region, i.e., reflectance or radiance,
then the nadir normalized brightness value of a pixel with column number j is calculated as:
bnorm (j) = b(j)
¯bnadir
f2 (j)
(10.79)
Figure 10.12: Nadir normalization of an image with hot-spot geometry.
Left: reflectance image without BRDF correction. Right: after empirical BRDF correction.
where the function f2 is obtained with three processing steps:
• The first step is the averaging over each interval (3◦ or 1◦ ). It yields a function f1 with m+1
grid points for the m off-nadir intervals plus the nadir interval.
• Two cases are distinguished now: if the image is not geocoded, an interpolation from function
f1 (m + 1) to a function f2 (ncols) is performed where ncols is the number of column pixels
of the image. If the image is geocoded, an interpolation from the 3◦ grid to the 1◦ grid is
performed (no hot spot case).
• The third step is a filter with a moving average window applied to the f2 function. The
following cases are distinguished: if the image is not geocoded the window is 9 pixels (without
hot spot) and 3 pixels (with hot spot option). If the image is geocoded, the moving window
extends over a 5◦ angular interval (no hot spot) and over a 3◦ interval (with hot spot option).
Figure 10.12 shows part of a HyMap image (acquired 3 June 1999, Barrax, Spain, 12:09 UTC)
containing the hot spot geometry. The solar azimuth was 181o and the sensor scan line azimuth
was 179o , almost exactly pointing into the solar azimuth. The left image shows HyMap band 30 at
868 nm after atmospheric correction. The right image is the result after nadir normalization with a
1o sampling interval. In this example, the column means were calculated globally, i.e. surface cover
independent. The algorithm also contains an option to compute the column means separately for
4 surface covers. It can currently only be selected if the input imagery is reflectance data and not
geocoded. The processing time is much larger than for the global, cover-independent method. The
four surface classes are:
CHAPTER 10. THEORETICAL BACKGROUND
175
• bright vegetation (ratio vegetation index NIR/RED > 10);
• medium/dark vegetation (6 < ratio vegetation index < 10);
• dry vegetation or mixed vegetation/soil (3 < vegetation index < 6);
• soil (vegetation index < 3).
The reflectance of off-nadir water pixels (criterion: near infrared reflectance < 5 %) is not modified.
2. Empirical BRDF correction in rugged terrain
For many surface covers the reflectance increases with increasing solar zenith and / or viewing
angle [47]. Scenes in mountainous regions often exihibit a large variation of terrain slopes, and
thus bidirectional brightness variations for a certain surface cover, e.g., meadow or forest. This
behavior cannot adequately be eliminated with the Lambertian assumption of equation (10.15).
This equation leads to overcorrected reflectance values in faintly illuminated areas (having small
values of cosβ). Several approaches have been pursuit to solve this problem :
• an empirical coefficient C is calculated based on a regression of brightness values and the
local ilumination angle derived from the DEM. The coefficient depends on scene content and
wavelength ([85], [54]).
• the sun-canopy-sensor (SCS) geometry is employed in forested terrain instead of the solely
terrain-based geometry [25].
• the SCS method is coupled with the C-correction [83].
These approaches produced good results on sample scenes with uniform cover types presented in
the above papers. When applying the methods to a wider range of areas, some of the practical
problems are:
• mountainous scenes often contain a number of different covers, e.g., deciduous forest, coniferous forest, mixed forest, shrubs, meadow, rocks, etc.
• the computation of the C coefficients for different surface covers would require a pre - classification.
• the correlation obtained for the C coefficients is often less than 0.7, yielding unreliable results
with this method.
These remarks are supported by reference [54]. These authors applied different correction approaches to a TM scene containing different cover types and noted that there is no optimum
method for all cover types. A drawback of the Minnaert and empirical C-methods is that they do
do not distinguish between the direct and diffuse solar illumination as opposed to the physically
based approach of ATCOR. Nevertheless, the latter approach also cannot avoid problems in faintly
illuminated areas. Therefore, it is supplemented by an empirical method with three adjustable
parameters (βT , b, and g) as explained below. This approach was tested on different rugged terrain scenes with vegetated and arid landscapes and usually yields satisfactory results. It reduces
overcorrected reflectance values starting at a threshold local solar zenith angle βT greater than the
scene’s solar zenith angle Θs . Equation (10.80 defines the implemented basic geometric correction
CHAPTER 10. THEORETICAL BACKGROUND
176
function which depends on the local solar incidence angle (solar illumination βi ) and the threshold
angle βT . The exponent b ( = 1/3, 1/2, 3/4, or 1) is the second parameter and can be selected
by the user. Some guidelines on the choice of b are are discussed below. The third adjustable
parameter is the lower bound g of the correction function, see Figure 10.13.
G = {cosβi /cosβT }b
≥g
(10.80)
The threshold illumination angle βT should have some margin to the solar zenith angle to retain
the original natural variation of pixels with illumination angles close to the solar zenith angle. The
threshold angle can be specified by the user and the following empirical rules are recommended:
• βT = θs + 20◦ if θs < 45◦
• If 45 ≤ θs ≤ 20◦ then βT = θs + 15◦
• If θs > 55◦ then βT = θs + 10◦
These rules are automatically applied if βT = 0, e.g., during batch processing.
The geometric function G needs a lower bound g to prevent a too strong reduction of reflectance
values. Values of G greater than 1 are set to 1, and values less than the boundary g are reset
to g. This means the processing works in the geometric regime from βT to 90◦ and the updated
reflectance is
ρg = ρL G
(10.81)
where ρL is the isotropic (Lambert) value.
Figure 10.13: Geometric functions for empirical BRDF correction.
Left: Functions G eq. (10.80) for different values of the exponent b.
Right: Functions G of eq. (10.80) for b=1 and different start values of βT .
The lower cut-off value is g=0.2 .
Figure 10.13 shows a graphical presentation of equation (10.80). The left part displays the function
G for different values of the exponent b. For b=1 the decrease with βi is strong with a constant
gradient. For smaller values of b the decrease with βi is moderate initially, but the gradient increases
CHAPTER 10. THEORETICAL BACKGROUND
177
with larger βi . Currently, different functions G for soil/sand and vegetation can be selected in
ATCOR (compare the graphical user interface of Figure 5.31). The function G for soil / sand is
applied with a wavelength - independent exponent b. After testing a large number of vegetated
mountainous scenes two vegetation modes were finally selected because of their good performance:
1. b=0.75 for channels with λ < 720 nm and b=0.33 for λ > 720 nm (”weak” correction),
2. b=0.75 (λ < 720 nm) and b=1 (λ > 720 nm), (”strong” correction).
In most of the tested cases, the first mode was appropriate. A simple criterion (vegetation index
ρ850nm /ρ660nm > 3) is used to distinguish soil/sand and vegetation.
The right part of Figure 10.13 shows the effect of shifting the threshold illumination angle βT . For
larger values of βT the decline of function G starts later with a larger gradient, and the lower bound
g is met at slightly higher values of βi . In most cases, g=0.2 to 0.25 is adequate, in extreme cases
of overcorrection g=0.1 should be applied.
10.5.2
Haze removal over land
In many cases of satellite imagery the scene contains haze and cloud areas. The optical thickness
of cloud areas is so high that the ground surfaces cannot be seen, whereas in hazy regions some
information from the ground is still recognizable. In ATCOR the scene is partitioned into clear,
hazy, and cloud regions. Here we will treat the low altitude boundary layer (0 - 3 km) haze as
opposed to high altitude cirrus. Thin boundary layer haze can be detected with broad-band multispectral instruments, while a detection of thin cirrus requires specific narrow bands around 1.38
µm or 1.88 µm, compare chapter 10.5.4. As a first approximation, haze is an additive component
to the radiance signal at the sensor. It can be estimated and removed as described below. Cloud
areas have to be masked to exclude them from haze areas and to enable a successful haze removal.
The treatment of cloud shadow regions is discussed in chapter 10.5.5.
The haze removal algorithm runs fully automatic. It is a combination of the improved methods
[57], [90] and consists of five major steps :
1. Masking of clear and hazy areas with the tasseled cap haze transformation [15].
T C = x1 ∗ BLU E + x2 ∗ RED
(10.82)
where BLUE, RED, x1 , and x2 are the blue band, red band, and weighting coefficients,
respectively. The clear area pixels are taken as those pixels where TC is less than the mean
value of TC.
2. Calculation of the regression between the blue and red band for clear areas (”clear line” slope
angle α), see figure 10.14. If no blue band exists, but a green spectral band, then the green
band is used as a substitute.
3. Haze areas are orthogonal to the ”clear line”, i.e., a haze optimized transform (HOT) can be
defined as (Zhang et al. 2002):
HOT = BLU E ∗ sinα − RED ∗ cosα
4. Calculation of the histogram of HOT for the haze areas.
(10.83)
CHAPTER 10. THEORETICAL BACKGROUND
178
5. For bands below 800 nm the histograms are calculated for each HOT level j. The haze signal
∆ to be subtracted is computed as the DN corresponding to HOT(level j) minus the DN
corresponding to the 2% lower histogram threshold of the HOT(haze areas). The de-hazed
new digital number is (see figure 10.14):
DN (new) = DN − ∆
(10.84)
Figure 10.14: Haze removal method. Left: regression between red and blue band for clear areas. Right:
calculation of Delta=∆ as a function of the HOT haze level (example Landsat TM band 1).
So the haze removal is performed before the surface reflectance calculation. Two options are
available: the use of a large area haze mask (eq. 10.85), which is superior in most cases, or a
compact smaller area haze mask (eq. 10.86).
HOT > mean(HOT ) − 0.5 ∗ stdev(HOT )
(10.85)
HOT > mean(HOT )
(10.86)
In addition, the user can select between haze removal of ”thin / medium haze” or ”thin to moderately thick haze”, the last option is superior in most cases.
The algorithm only works for land pixels, so the near infrared band (NIR) is used to exclude
water pixels. The current implementation provides a mask for haze-over-land (coded with 110
in the visibility index channel). The haze-over-water mask (to be coded with 111) is difficult to
determine, leaving room for future research and improvements. The cloud mask is coded with
112. The remaining numbers (0 to 109) of the visibility index channel (”* visindex.bsq” file) are
reserved for the coding of the optical optical thickness channel are reserved for the coding of the
optical depth or visibility index itself, compare chapter 10.4.2 on the derivation of the visibility map.
Figure 10.15 shows an example of a subset of an Ikonos scene of Dresden where the haze removal
algorithm was applied. More images with the results of the haze removal method are shown on
ATCOR’s web page, http://www.rese.ch or http://www.op.dlr.de/atcor.
CHAPTER 10. THEORETICAL BACKGROUND
179
c
Figure 10.15: Subset of Ikonos image of Dresden, 18 August 2002. Space
Imaging Europe 2002. Left:
original scene, right: after haze removal. Color coding: RGB=4/2/1 (NIR/Green/Blue bands)
10.5.3
Haze or sun glint removal over water
The haze removal over water uses a near infrared (NIR) band to estimate the spatial distribution of
haze. The principal method is described in [43]. We use a modified version of this approach without
an interactive definition of haze polygons. First, the water pixels are masked either using spectral
criteria or taking an external water map. If the scene is named ”scene1.bsq” the external map must
be named ”scene1 water map.bsq”, a 1-channel 8-bit/pixel or 16-bit/pixel file where water is coded
with an arbitrary positive number. The external map is automatically taken if it is placed in the
same folder as the scene. The second step is the definition of clear water pixels using the apparent
reflectance in the NIR band. Pixels are labeled as clear if
ρ∗ (N IR) < T1 (clear)
clear pixels
(10.87)
The default value is T1 (clear) = 0.04 (i.e. 4%). The value is one of the editable preference
parameters (see chapter 9.3). Thin haze over water is defined as:
T1 (clear) ≤ ρ∗ (N IR) ≤ 0.06
thin haze
(10.88)
medium haze
(10.89)
Medium haze over water is defined as:
0.06 < ρ∗ (N IR) ≤ T2 (haze)
The default value is T2 (haze) = 0.12 (i.e. 12%). This value is also one of the editable preference
parameters. The third step is a linear regression between haze pixels in the NIR band and each
other (reflective) band. The regression is iterated with only those pixels deviating less than half
a standard deviation from the average. If αj and βj denote offset and slope of the regression line,
respectively, the de-hazed pixel for each channel j can be calculated as
DN (corrected, j) = DN (original, j) − (αj + βj DNN IR − DN (clear, j))
(10.90)
where DN (clear, j) is the average of all clear water pixels in channel j. The same technique is also
employed to remove sun glint. The main problem is the specification of the clear water threshold.
CHAPTER 10. THEORETICAL BACKGROUND
180
If the threshold is too low, clear water pixels are included in the haze mask, if it is set too high haze
or sun glint pixels will be included in the clear pixel class. There is no unique solution, because
sandy bottoms over shallow water can have a similar spectral reflectance behavior as haze, so the
clear water threshold is scene-dependent. In addition, the upper threshold defining haze (or sun
glint) might be scene-dependent. However, the default values usually provide good results and a
solid basis for a possible iteration of these two parameters.
Figure 10.16 presents an example of haze removal over water with the two default values of
T1 (clear) = 0.04 and T2 (haze) = 0.12. The de-hazing over water is successful to a large extent, however, some artifacts appear close to the land border (image center) where haze pixels over
water are classified as land or cloud. This is due to a simple spectral classification of the land /
water mask, an external water map would lead to better results.
Figure 10.16: Haze removal over water, ALOS-AVNIR2 true color image, northern Germany, 16 April
2007. Left: part of original scene, right: after haze removal.
10.5.4
Cirrus removal
On the first glance, images contaminated by cirrus appear similar to hazy scenes discussed in the
previous section. However, haze usually occurs in the lower troposphere (0-3 km) while cirrus clouds
exist in the upper troposphere and lower stratosphere (8 - 16 km). The effect of boundary layer
haze can be observed in the visible region, but seldom in longer wavelength channels > 850 nm.
However, cirrus also affects the NIR and SWIR spectral regions. Thin cirrus clouds are difficult
to detect with broad-band multispectral satellite sensors in the atmospheric window regions, especially over land, because land scenes are spatially inhomogeneous and this type of cloud is partially
transparent. On the other hand, water vapor dominates in the lower troposphere and usually 90%
or more of the atmospheric water vapor column is located in the 0 - 5 km altitude layer. Therefore,
CHAPTER 10. THEORETICAL BACKGROUND
181
if a narrow spectral band is selected in a spectral region of very strong water vapor absorption, e.g.,
around 1.38 µm or 1.88 µm, the ground reflected signal will be totally absorbed, but the scattered
cirrus signal will be received at a satellite sensor or a sensor in a high-altitude aircraft (e.g., 20 km
AVIRIS scenes).
So a narrow channel at 1.38 µm is able to detect cirrus clouds, and if a correlation of the cirrus
signal at this wavelength and other wavelengths in the VNIR and SWIR region can be found, then
the cirrus contribution can be removed from the radiance signal to obtain a cirrus-corrected scene.
The basic ideas of cirrus correction were presented in several papers ([19], [20], [22], [71]). The
algorithm differs for water and land pixels. For water, a scatterplot of the 1.38 µm versus the 1.24
µm channel is used, for land the band-correlation is determined from a scatterplot of the 1.38 µm
versus a red channel (around 0.66 µm). To obtain a high sensitivity, only vegetation pixels are
taken because they have a low reflectance in the red spectral region, so the cirrus contribution is
easily traced. The scatterplot is computed in terms of the apparent (TOA or at-sensor) reflectance
of ρ1.38 versus ρred where the apparent reflectance is defined as:
ρ∗ =
πL
Es cosθs
(10.91)
where L is the recorded radiance signal, Es the extraterrestrial solar irradiance for the selected
band, and θs is the solar zenith angle. Following [19] the method can be described by the following
set of equations:
ρ∗ (λ) = ρc (λ) +
Tc (λ) ρ(λ)
1 − sc (λ) ρ(λ)
(10.92)
Here, ρc is the reflectance of the cirrus cloud, Tc the two-way transmittance (direct plus diffuse)
through the cloud, ρ the reflectance of the ”virtual” surface (land or water surface including all
effects of molecular and aerosol scattering below the cirrus), and sc is the cloud base reflectance of
upward radiation. Eq. 10.92 can be simplified, because of sc ρ << 1, yielding
ρ∗ (λ) = ρc (λ) + Tc (λ) ρ(λ)
(10.93)
With the assumption that the cirrus reflectance ρc (λ) is linearly related to the cirrus reflectance at
1.38 µm we obtain
ρ∗ (λ) = ρc (1.38µm) / γ
(10.94)
where γ is an empirical parameter derived from the scene scatterplot of ρ1.38 versus ρred (land) or
ρ1.24 (water). It depends on the scene content, cirrus cloud height, and solar and viewing angles.
Fig. 10.17 shows an example of such a scatterplot. The red line is the left-side boundary of
data points that are not influenced by ground surface reflection, i.e. cirrus-contaminated pixels
are clustered around this line, and its slope represents the correlation coefficient γ (the blue line
represents the first of several iterations). Papers on the cirrus algorithm often restrict eq. 10.94 to
the wavelength interval 0.4 < λ < 1 µm, but we will extend this relationship into the SWIR region.
Substituting eq. 10.94 into eq. 10.93 yields
Tc (λ) ρ(λ) = ρ∗ (λ) − ρc (1.38µm) / γ
(10.95)
Neglecting the cirrus transmittance Tc (i.e., setting Tc = 1), we obtain the ”cirrus path radiance
corrected” apparent reflectance image (index ’cc’):
ρ∗cc (λ) = ρ∗ (λ) − ρc (1.38µm) / γ
(10.96)
CHAPTER 10. THEORETICAL BACKGROUND
182
Figure 10.17: Scatterplot of apparent reflectance of cirrus (1.38 µm) band versus red band.
As the cirrus is almost on top of the atmosphere we have ρc (1.38µm) = ρ∗c (1.38µm) and the apparent cirrus reflectance can be calculated with eq. 10.91. Cirrus removal is conducted as the first step
during atmospheric correction, followed by the aerosol and water vapor retrievals. If the average
water vapor column W of a scene is less than some threshold (default W=0.6 cm) then the cirrus
removal algorithm is switched off, to avoid a misinterpretation of bright surfaces as cirrus in the
1.38 µm channel. Normally, atmospheric water vapor completely absorbs surface features in the
1.38 µm channel, but the channel might become partly transparent to surface features for very low
water vapor values. This water vapor threshold can be set by the user, see chapter 9.3.
The file ’xxx out hcw.bsq’ (haze, cloud, water) corresponding to a scene ’xxx.bsq’ contains three
relative levels of cirrus optical thickness (thin, medium, and high). The corresponding thresholds
are arbitrarily set depending on the statistics (mean, standard deviation) of the apparent reflectance
ρ∗c (1.38µm) map. The file ’xxx out hcw.bsq’ is intended as a visual aid or quicklook, therefore, the
cirrus level maps of different scenes cannot be compared quantitatively. As an example, a certain
scene setting could be:
• thin cirrus thickness, color coded as light yellow, with 0.010 < ρ∗ (cirrus) ≤ 0.015,
• medium thickness, color coded as darker yellow, with 0.015 < ρ∗ (cirrus) ≤ 0.025,
• high thickness, color coded as bright yellow, with ρ∗ (cirrus) > 0.025 (reflectance units).
In addition to the 1.38 µm cirrus channel, another channel (index w1) around 1.24 µm (or as a
substitute a NIR channel from the 800 to 900 nm region) is employed with a ratio criterion to
define cirrus pixels:
ρ∗ (cirrus)/ρ∗ (w1) > T (cir)
(10.97)
Reference [21] proposes a threshold of T(cir) = 0.3 to distinguish tropospheric aerosols due to dust
storms from cirrus clouds. However, in the absence of dust storms, this threshold is too high and
predicted no cirrus in a number of test scenes containing a lot of cirrus clouds. Therefore, we use
much lower values of T(cir) ranging from 0.01 (for water vapor columns W > 1 cm) to T(cir)=0.15
(for W < 0.5 cm). So with these thresholds, tropospheric aerosols might be misclassified as cirrus
in situations with dust storms, but this is a necessary trade-off. In any case, those cloud areas are
CHAPTER 10. THEORETICAL BACKGROUND
183
excluded from the map of pixels employed for the aerosol retrieval, which is the main purpose.
The cirrus and (boundary layer) haze removal options are exclusive, i.e., only one of them can be
selected per run.
10.5.5
De-shadowing
Remotely sensed optical imagery of the Earth’s surface is often contaminated with cloud and cloud
shadow areas. Surface information under cloud covered regions cannot be retrieved with optical
sensors, because the signal contains no radiation component being reflected from the ground. In
shadow areas, however, the ground-reflected solar radiance is always a small non-zero signal, because the total radiation signal at the sensor contains a direct (beam) and a diffuse (reflected
skylight) component. Even if the direct solar beam is completely blocked in shadow regions, the
reflected diffuse flux will remain, see Figure (10.18). Therefore, an estimate of the fraction of direct
solar irradiance for a fully or partially shadowed pixel can be the basis of a compensation process
called de-shadowing or shadow removal. The method can be applied to shadow areas cast by clouds
or buildings.
The proposed de-shadowing technique works for multispectral and hyperspectral imagery over land
acquired by satellite / airborne sensors. The method requires a channel in the visible and at least
one spectral band in the near-infrared (0.8-1 µm) region, but performs much better if bands in the
short-wave infrared region (around 1.6 and 2.2 µm) are available as well. The algorithm consists of
these major components: (i) the calculation of the covariance matrix and zero-reflectance matched
filter vector, (ii) the derivation of the unscaled and scaled shadow function, (iii) a histogram thresholding of the unscaled shadow function to define the core shadow areas, (iv) a region growing to
include the surroundings of the core shadow areas for a smooth shadow/clear transition, and (v)
the de-shadowing of the pixels in the final shadow mask. Details are published in [63].
Figure 10.18: Sketch of a cloud shadow geometry.
The method starts with a calculation of the surface reflectance image cube ρi = ρ(λi ), where
three spectral bands around λi = 0.85, 1.6, and 2.2 µm are selected. These bands from the near
and shortwave infrared region are very sensitive to cloud shadow effects, because the direct part
CHAPTER 10. THEORETICAL BACKGROUND
184
of the downwelling solar radiation flux at the ground level is typically 80% or more of the total
downwelling flux. Channels in the blue-to-red region (0.4-0.7 µm) are not used for the detection of
shadow regions because they receive a much larger diffuse radiation component, making them less
sensitive to partial shadow effects. Instead, visible channels serve to define a potential cloud mask.
The surface reflectance is first computed with the assumption of full solar illumination, i.e., the
global flux on the ground consists of the direct (Edir ) and diffuse (Edif ) component. If DN
denotes the digital number of a pixel, LP the path radiance, and τ the atmospheric transmittance
(ground-to-sensor) the surface reflectance can be obtained as:
ρi (x, y) =
π(d2 {c0 (i) + c1 (i)DNi (x, y)} − Lp,i )
τi {Edir,i + Edif,i }
(10.98)
Here, d is the Earth-Sun distance at the image acquisition time in astronomical units, c0 and c1
are the radiometric calibration coefficients (offset and slope) to convert the digital number into the
corresponding at-sensor radiance L, i.e., L = c0 + c1 DN , and i is the channel index.
The proposed de-shadowing algorithm consists of a sequence of eight processing steps as sketched
in Fig. 10.19. It starts with the atmospheric correction. The next step is the masking of water
bodies and cloud areas with simple spectral criteria as detailed below. Water pixels have to be
excluded as far as possible to avoid their assignment as shadow pixels.
Step 3 calculates the covariance matrix C(ρ) where ρ is the surface reflectance vector comprising
only the non-water and non-cloud pixels. For each pixel, this vector holds the reflectance values
in the 3 selected channels (around 0.85, 1.6, 2.2 µm). The matched filter is a vector tuned to a
certain target reflectance spectrum ρt to be detected [1] :
Vmf =
C −1 (ρt − ρ¯)
(ρt − ρ¯)T C −1 (ρt − ρ¯)
Figure 10.19: Flow chart of processing steps during de-shadowing.
(10.99)
CHAPTER 10. THEORETICAL BACKGROUND
185
Here, ρ¯ is the scene-average spectrum, without the water/cloud pixels. Selecting ρt = 0 for a
shadow target yields a special simplified form of the matched filter, where the ’sh’ index symbolizes
shadow:
Vsh = −
C −1 ρ¯
ρ¯T C −1 ρ¯
(10.100)
The shadow matched filter vector is then applied to the non-water/non-cloud part of the scene
and yields the still un-normalized values φ that are a relative measure of the fractional direct
illumination, also called unscaled shadow function here:
T
Φ(x, y) = Vsh
(ρ(x, y) − ρ¯)
(10.101)
The matched filter calculates a minimum RMS shadow target abundance for the entire (nonwater/non-cloud) scene. Therefore, the values of Φ are positive and negative numbers. The arbitrary, image-depending range of Φ has to be rescaled to the physical range from 0 to 1, where 0
indicates no direct illumination (full shadow), and 1 means full direct illumination. The histogram
of Φ is used to rescale the image data. Fig. 10.20 shows a schematic sketch of such a histogram with
a smaller peak (at Φ2 ) representing the shadow pixels and the main peak (at Φmax ) representing
the majority of the fully illuminated areas. The statistical assumption is used that full direct solar
illumination is already obtained for pixels with Φ(x, y) = Φmax . Then the values Φ are linearly
mapped from the unscaled (Φmin , Φmax ) interval onto the physically scaled (0,1) interval, where
the scaled shadow function is named Φ∗ :
Φ∗ =
Φ=1
Φ − Φmin
Φmax − Φmin
if
Φ ≤ Φmax
(10.102)
if
Φ > Φmax
(10.103)
The smallest value of the scaled shadow function is Φ∗min = 0, which means no direct illumination.
However, to avoid overcorrection and to cope with scenes containing merely partial shadow areas, it
is advisable to set Φ∗min at a small positive value. This value of Φ∗min , i.e., the minimum fractional
direct illumination (deepest shadow in a scene, typically ranging between 0.05 and 0.10) is scenedependent, see the detailed discussion below.
In principle, the de-shadowing could now be performed with the physically scaled function Φ∗ ,
which represents the fraction of the direct illumination for each pixel in the ρ vector, i.e., the
complete scene without cloud and water pixels. However, since the matched filter is not a perfect
shadow transformation, it is much better to restrict its application to the potential, most-likely
shadow areas. This is an important processing step to reduce the number of mis-classifications
or false-alarms. If omitted it will cause strange ’shadow’ pixels scattered all over the image. An
example can be found in the central part of Fig. 10.21 where the standard shadow map contains a
lot of artifact shadow areas.
Therefore, the proposed method tries to find the core shadow areas in a scene, and subsequently
expands the core regions to obtain the final mask that includes a smooth shadow/clear transition.
The physically scaled shadow function Φ∗ is then applied only to the pixels in the final mask.
The histogram of the unscaled shadow function Φ can be employed to separate regions of low
values of Φ from the moderate-to-high values, compare Fig. 10.20. A threshold ΦT can be set in
the vicinity of the local histogram minimum (Φ1 ) and the core shadow mask is defined by those
pixels with Φ(x, y) < ΦT . The details of the choice of ΦT are discussed below. As always with
thresholding, some arbitrariness is involved in the final selection.
CHAPTER 10. THEORETICAL BACKGROUND
186
Figure 10.20: Normalized histogram of unscaled shadow function.
Once the core shadow mask has been defined, it is expanded to include the surrounding shadow
/ clear transition zone of 100 m width. De-shadowing with the scaled shadow function Φ∗ is then
exclusively applied to the pixels in this final mask. This means the direct solar flux (Edir term in
eq. 10.98) has to be multiplied with Φ∗ (x, y):
ρi (x, y) =
π(d2 {c0 (i) + c1 (i)DNi (x, y)} − Lp,i )
τi {Edir,i Φ∗ (x, y) + Edif,i }
(10.104)
In equations (10.98, 10.104) the aerosol optical thickness or visibility required for the atmospheric
terms (path radiance, transmittance, direct and diffuse flux) can be derived from the image provided the necessary bands in the visible and shortwave infrared region exist and the scene contains
dark reference areas [39]. Otherwise, the user has to specify an estimated visibility. The second
important atmospheric parameter is the water vapour column. For instruments with bands in
the atmospheric water vapour regions this information can be derived from the image data [75],
otherwise an estimate has to be provided by the user. In summary, three channels (around 0.85,
1.6, and 2.2 µm) are used to define a matched filter vector with three elements per pixel. For
each image pixel the surface reflectance in these three channels and the scene-average reflectance of
these channels are calculated to obtain the unscaled shadow function, and finally the scaled shadow
function. The same shadow function is employed to de-shadow the imagery not only in the initial
three channels but for all channels of the sensor (eq. 10.104).
Details of the method:
One of the most important parameters is the available number of spectral channels during the
covariance matrix and matched filter part of the algorithm. The minimum requirement is a band
in the near-infrared region (0.8 - 1.0 µm). The performance usually increases significantly if two
additional bands (at 1.6 µm and at 2.2 µm) are available, i.e., a Landsat TM type of multispectral
sensor. Even for hyperspectral imagery these three bands (around 0.85, 1.6, 2.2 µm) are sufficient
for the matched filter calculation. The usage of a hundred bands would not be helpful, but only
cause numerical problems during the inversion of the covariance matrix (eq. 10.100).
CHAPTER 10. THEORETICAL BACKGROUND
187
Figure 10.21: Cloud shadow maps of a HyMap scene.
Left: surface reflectance image of HyMap at Chinchon, Spain, 12 July 2003. Colour coding:
RGB=878, 646, 462 nm channels. Center: standard shadow map showing a lot of artifact shadow
areas (grey patches) which do not appear with the core shadow approach (right part). Right:
improved cloud shadow map derived from core shadow regions.
Spectral channels from the visible region are merely employed for the masking of cloud regions, not
for the matched filter part, because water, vegetation, dark soils, and shadowed pixels all range
within a few percent reflectance. In addition, the visible region is not very sensitive to partial
shadow effects, because of its larger fraction of diffuse radiation component as compared to wavelengths longer than 0.8 µm.
The distinction of water bodies from cloud shadow areas may be difficult or impossible if it is based
merely on spectral reflectance shape and amplitude information. Water bodies should be excluded
as far as possible to improve the performance of the de-shadowing algorithm. Currently, water and
cloud pixels are masked with the spectral criteria:
ρ(0.85µm) ≤ 5%
ρ(0.48µm) ≥ 30%
and
and
ρ(1.6µm) ≤ 1%
ρ(1.6µm) ≥ 30%
(water)
(cloud)
(10.105)
(10.106)
If no channel in the blue region is available, a channel in the green (0.5-0.6 µm) or red part of the
spectrum (0.6-0.68 µm) could be used as a substitute. Both criteria do not uniquely define the
CHAPTER 10. THEORETICAL BACKGROUND
188
corresponding class. The water criteria allow some margin for turbid water in the NIR region. The
more restrictive criterion ρ(0.85 µm) < 3% would perform better for clear water bodies. However,
it would fail for moderately turbid or muddy waters. Other common water classification criteria
such as average reflectance over all bands ρ¯ ≤ 3% or ρ(0.4 − 0.6µm) < 6% may also fail. So one has
to compromise and tolerate a certain amount of misclassification for a fully automatic algorithm.
The scaled shadow map Φ∗ (x, y) is written to an output file.
The histogram of the unscaled shadow function Φ (Fig. 10.20) typically has a main peak at Φmax , a
smaller secondary peak (at Φ2 ) due to shadow pixels, and a local minimum (at Φ1 ). The secondary
peak can be determined by level-slicing the normalized histogram. We arbitrarily define a threshold
ΦT as the intersection of this slice line at the level of h(Φ2 ) with the normalized histogram h(Φ)
for Φ1 < Φ < Φmax . The approach with a main peak and a smaller secondary peak is restricted to
cases where the percentage of shadow pixels in the scene is less than about 25%. This applies to the
fully automatic processing mode. If the secondary peak at Φ2 is not clearly defined numerically,
i.e., no local minimum found at Φ1 , or histogram difference h(Φ2 ) − h(Φ1 ) < 0.03, then ΦT is
defined as the intersection of the slice level 0.10 with h(Φ) for Φ < Φmax . More flexibility exists in
the interactive mode, see chapter 2.5, figure 5.25.
Masking of the core shadow areas with Φ < ΦT (Fig. 10.20) is critical like any thresholding process:
a large threshold could potentially include non-shadow areas, a low threshold could miss shadow
areas. The current automatic algorithm has the three user-selectable options of a small, medium,
or large core shadow mask corresponding to thresholds set at ΦT − 0.1, ΦT , and ΦT + 0.1, respectively. The default value for the fully automatic algorithm is the medium-size mask. In addition,
an interactive mode for adjusting the threshold is also available.
A second tunable parameter is the minimum fractional direct illumination Φ∗min , also called depth
of shadow. Theoretically, it can be zero, i.e., a completely shadowed pixel receiving only diffuse
solar illumination. However, a too low estimate close to zero will boost the surface reflectance,
especially for channels in the 1.5 - 2.5 µm region (eq. 10.104), since the diffuse solar radiation term
Edif is very small. Therefore, small positive values of Φ∗min are recommended. The range of Φ∗min
is typically from 0.05 to 0.1, with the default set at Φ∗min = 0.08. The third tunable parameter is
Φmax providing the range of stretching of the unscaled shadow function into the scaled function.
The default of Φmax is the location of the maximum of the histogram of Φ, but it could be set at
a greater value if the corrected image is too dark in the expanded shadow regions, which indicates
the histogram maximum does not represent fully illuminated areas.
The advantage of the presented method is its fast processing performance, because it relies exclusively on spectral calculations and avoids time-consuming geometric cloud/shadow pattern considerations. The drawback is that useful geometric information is neglected.
In some cases it is useful to have the de-shadowed digital number (DN) image in addition to the
surface reflectance product. This facilitates a comparison with the originally recorded DN imagery.
The conversion from reflectance to the corresponding at-sensor radiance is performed with eq.
(10.1). Then eq. (10.6) is employed to compute the de-shadowed DN image for channel k:
DN (k) =
L(k) − c0 (k)
c1 (k)
(10.107)
Figure 10.22 shows an example of de-shadowing. More images with the results of the de-shadowing
CHAPTER 10. THEORETICAL BACKGROUND
189
method can be found on ATCOR’s web page, http://www.rese.ch or http://www.op.dlr.de/atcor .
Figure 10.22: De-shadowing of a Landsat-7 ETM+ scene.
Subset of a Landsat-7 ETM+ scene from Kenia, 10 April 2001. Color coding: RGB = bands
4/2/1 (830, 560, 480 nm). Left: original scene, right: after de-shadowing.
10.6
Summary of atmospheric correction steps
Although the case of a flat terrain could be treated as a special case of a rugged terrain with the
same elevation everywhere this is not an efficient solution, because the rugged terrain algorithm
runs 3 to 4 times slower than the flat terrain code. Therefore, the coding is done in separate
modules as discussed below.
10.6.1
Algorithm for flat terrain
The complete sequence of processing for sensors with water vapor bands and a short wave IR band
(1.6 or 2.2 µm region) consists of the following steps:
• masking of haze, cloud, water, and clear pixels
• haze removal
• de-shadowing
• masking of reference pixels
• calculation of visibility or optical thickness for reference pixels. The optical thickness for the
remaining pixels can be defined as the average of the reference pixels or a spatial (triangular)
interpolation is employed to fill the gaps. Finally, a moving low pass window with a box size
of 3km × 3km is applied to smooth sensor noise and small scale variations of the spectral
correlation coefficient for the DDV reference pixels. The resulting visibility index and AOT
CHAPTER 10. THEORETICAL BACKGROUND
190
maps are stored as separate files. The visibility calculation based on the reference pixels has
to account for the adjacency effect, because reference areas are embedded in non-reference
areas, see the sketch below. Since the weighting fraction of reference to non-reference area
within the adjacency range is not known for each pixel, the visibility calculation is performed
with an average adjacency weighting factor of 0.5 q :
Figure 10.23: Weighting of q function for reference pixels.
Ladj.cor = c0 + c1 DN + 0.5q(DN − DNav,clear )
(10.108)
L(V IS) = Lp + τ ρref Eg /π = Ladj.cor
(10.109)
Next the visibility is converted into the nearest visibility index vi (range 0-54), compare Fig. 10.9,
to store the visibility index map as byte data. Spatial interpolation is performed to fill the gaps
for non-reference pixels or the average vi value can be taken to close the gaps. A moving average
window of 500 m × 500 m is employed to reduce the influence of noise. In addition, the haze-overland, haze-over-water, and cloud pixels are coded with 55, 56, and 57 in the visibility index map,
respectively. The cloud / building shadow map is stored separately (”fshd.bsq” file, containing the
fraction of direct solar irradiance per pixel, scaled with the factor 1000). The scaled value 1000
indicates full solar irradiance, smaller values a corresponding fractional value.
• an update of the path radiance in the blue-to-red spectral region is performed, if required,
provided a blue spectral band exists.
• water vapor retrieval using the previously calculated visibility map. If the scene contains
no reference areas the user has to specify a constant visibility that enters the water vapor
calculation.
• reflectance spectrum retrieval with pixel-based water vapor and visibility map. Iterations
for adjacency effect and spherical albedo are included. For the adjacency correction, the
reflectance of cloud pixels is replaced with the scene average reflectance to avoid an overcorrection of the adjacency effect.
• temperature / emissivity retrieval if thermal bands exist.
10.6.2
Algorithm for rugged terrain
The algorithm for rugged terrain basically consists of the same processing step as in the flat terrain,
but every step has to take into account some or all DEM information:
CHAPTER 10. THEORETICAL BACKGROUND
191
• During the calculation of the visibility index map the DEM information (elevation, slope,
aspect, skyview factor) is taken into account.
• The retrieval of the water vapor map has to include the terrain elevation.
• The empirical BRDF correction is based on the local illumination map (local solar zenith
angle) derived from the slope, aspect and shadow channels.
• The retrieval of the spectral reflectance cube consists of the steps
1. three iterations for terrain reflectance,
2. empirical BRDF correction depending on illumination map, if enabled,
3. adjacency correction, including proper treatment of cloud areas,
4. spherical albedo correction.
• The retrieval of surface temperature and emissivity includes the maps of visibility index, water
vapor (if water vapor bands exist), elevation, and scan angle. No slope/aspect correction is
performed in the thermal region.
10.7
Spectral classification of reflectance cube
The SPECL code performs a spectral preclassification of the reflectance cube based upon template
spectra at the Landsat Thematic Mapper reference wavelengths (i.e., 0.48, 0.56, 0.66, 0.83, 1.6,
2.2 µm) and returns a map of class indices for each pixel. The template spectra consist of typical
vegetation covers, soil, sand, and water, see figure 10.24. If the spectral reflectance signature agrees
within a 10% margin at the reference wavelengths with one of the class template spectra it is put
into this class, otherwise it belongs to the class undefined.
Figure 10.24: Examples of template reflectance spectra employed by the SPECL code.
10.8
Accuracy of the method
There is not a single figure that can be given to summarize the accuracy for all situations, because
the radiometric accuracy of the method depends on several factors: the calibration accuracy of
CHAPTER 10. THEORETICAL BACKGROUND
192
the sensor, the quality of geometric co-registration of the spectral bands, the algorithm for orthorectification relying on auxiliary information such as attitude and GPS/DGPS, the accuracy of the
radiative transfer code (MODTRAN 5), the correct choice of atmospheric input parameters, the
terrain type (flat or rugged), and the surface cover.
Solar region:
In the solar region (wavelength < 2.5 µm), assuming a flat terrain, and avoiding the specular and
backscattering regions, an accuracy of the retrieved surface reflectance of ±2% (for reflectance <
10%) and ±4% reflectance units (for reflectance > 40%) can be achieved [62]. For rugged terrain,
the most important parameter is an adequate spatial resolution of the DEM or DSM (digital surface
model) and the exact ortho-rectification of the imagery. It would be desirable to have a DEM of a
quarter of the sensor’s spatial resolution or at least the resolution of the sensor’s footprint which
is seldom available [59]. Even in the latter case, errors in the matching of imagery and DEM can
lead to large relative reflectance errors exceeding 100% for critical geometries (principal plane, e.g.
a mountain ridge with half a pixel offset between imagery and DEM [59]). Thus, the quality of the
required DEM will limit the final accuracy of the geo-atmospheric image product in many cases.
For a flat terrain and larger off-nadir view angles, BRDF effects may have to be accounted for, and
the appropriate surface-cover dependent BRDF model will influence the accuracy.
Thermal region:
In the thermal wavelength region beyond 8 µm, the surface temperature retrieval additionally
depends on the correct choice of the surface emissivity. In the ATCOR model the emissivity in one
thermal band is based on a classification of the reflective bands if the sensor collects co-registered
reflective and thermal band data. Depending on the surface cover classification (vegetation, soil,
sand, asphalt, water, etc.), a typical emissivity value is assigned to each class [73]. If the deviation
of the true surface emissivity to the assumed emissivity is less than 0.02 (a typical error margin),
then the temperatures will be accurate to about 1-1.5 K. A rule of thumb is a surface temperature
error of about 0.5-0.8 K per 0.01 emissivity error if the surface temperature is much higher than
the boundary layer air temperature [80]. An accuracy of 1-2 K can be achieved if the emissivity
estimate is better than 2% [12].
Bibliography
[1] Adler-Golden, S.M., Matthew, M. W., Anderson, G. P., Felde, G. W., and Gardner, J. A.,
2002, An algorithm for de-shadowing spectral imagery, Proc. 11th JPL Airborne Earth Science
Workshop, 5-8 March 2002, JPL-Publication 03-04, Pasadena, U.S.A.
[2] Asrar, G., Fuchs, M., Kanemasu, E. T., and Hatfield, J. L., ”Estimating absorbed photosynthetically active radiation and leaf area index from spectral reflectance in wheat”, Agron. J.,
Vol. 76, 300-306, (1984).
[3] Asrar, G. ”Theory and Applications of Optical Remote Sensing”, J. Wiley, New York, (1989).
[4] Baret, F., and Guyot, G., 1991, ”Potentials and limits of vegetation indices for LAI and APAR
assessment”, Remote Sensing of Environment, Vol. 35, 161-173, (1991).
[5] Berk, A., Bernstein, L.S., Anderson, G.P., Acharya, P.K., Robertson, D.C., Chetwynd, J.H.,
and Adler-Golden, S.M., ”MODTRAN cloud and multiple scattering upgrades with application
to AVIRIS”, Remote Sensing of Environment, Vol. 65, 367-375 (1998).
[6] Berk, A., Anderson, G.P., Acharya, P.K., and Shettle, E.P., ”MODTRAN5.2.0.0 User’s Manual”, Spectral Sciences Inc., Burlington MA, Air Force Research Laboratory, Hanscom MA
(2008).
[7] Brutsaert, W., ”On a derivable formula for long-wave radiation from clear skies”, Water Resources Research, Vol. 11, 742-744, (1975).
[8] Buettner, K. J. K., and Kern, C. D., ”The determination of infrared emissivities of terrestrial
surfaces, Journal of Geophysical Research, Vol. 70, 1329-1337, (1965).
[9] Carlson, T. N., Capehart, W. J., and Gillies, R. R., ”A new look at the simplified method for
remote sensing of daily evapotranspiration”, Remote Sensing of Environment, Vol. 54, 161-167,
(1995).
[10] Choudhury, B. J., ”Synergism of multispectral satellite observation for estimating regional
land surface evaporation”, Remote Sensing of Environment, Vol. 49, 264-274, (1994).
[11] Choudhury, B. J., Ahmed, N. U., Idso, S. B., Reginato, R. J., and Daughtry, C. S. T., ”Relations between evaporation coefficients and vegetation indices studied by model simulations”,
Remote Sensing of Environment, Vol. 50, 1-17, (1994).
[12] Coll, C., Caselles, V., Rubio, E., Sospreda, F., and Valor, E., ”Temperature and emissivity
separation from calibrated data of the Digital Airborne Imaging Spectrometer”, Remote Sens.
Environm., Vol. 76, 250-259, (2001).
193
References
194
[13] Coll, C., Richter, R., Sobrino, J. A., Nerry, F., Caselles, V., Jimenez, J. C., Labed-Nachbrand,
J., Rubio, E., Soria, G., and Valor, E., ”A comparison of methods for surface temperature and
emissivity estimation”, In Digital Airborne Spectrometer Experiment, ESA- SP-499 p. 217-223,
Nordwijk, Netherlands (2001).
[14] Corripio, J. G., ”Vectorial algebra algorithms for calculating terrain parameters from DEMs
and the position of the sun for solar radiation modelling in mountainous terrain”, Int. J. of
Geographical Information Science, Vol. 17, 1-23 (2003).
[15] Crist, E. P., and Cicone, R. C., ”A physically-based transformation of Thematic Mapper data
- the Tasseled Cap”, IEEE Trans. Geosci. Remote Sensing, Vol. GE-22, 256-263 (1984).
[16] Dozier, J., Bruno, J., and Downey, P., ”A faster solution to the horizon problem”, Computers
& Geosciences, Vol. 7, 145-151 (1981).
[17] Dell’Endice, F., Nieke, J., Schl¨
apfer, D., and Itten, K. I., ”Scene-based method for spatial
misregistration detection in hyperspectral imagery”, Applied Optics, Vol. 46, 2803-2816 (2007).
[18] ERSDAC. ”ASTER User’s Guide, Part II, (Vers. 3.1)”, (2001).
[19] Gao, B.-C., Kaufman, Y.J., Han, W., and Wiscombe, W.J., ”Correction of thin cirrus path
radiances in the 0.4 - 1.9 µm spectral region using the sensitive 1.375 µm cirrus detecting
channel”, J. Geophys. Res., Vol. 103, D24, 32,169-32,176 (1998).
[20] Gao, B.-C., Yang, P., Han, W., Li, R.-R., and Wiscombe, W.J., ”An algorithm using visible
and 1.38 µm channels to retrieve cirrus cloud reflectances from aircraft and satellite data”,
IEEE Trans. Geosci. Remote Sens., Vol. 40, 1659-1668 (2002).
[21] Gao, B.-C., Kaufman, Y. J., Tanre, D., and Li, R. R., ”Distinguishing tropospheric aerosols
from thin cirrus clouds for improved aerosol retrievals using the ratio of 1.38−µm and 1.24−µm
channels”, Geophys. Res. Letters, Vol. 29, No. 18, 1890, 36-1 to 36-4 (2002).
[22] Gao, B.-C., Meyer, K., and Yang, P., ”A new concept on remote sensing of cirrus optical depth
and effective ice particle size using strong water vapor absorption channels near 1.38 and 1.88
µm”, IEEE Trans. Geosci. Remote Sens., Vol. 42, 1891-1899 (2004).
[23] Gillespie, A. R., ”Lithologic mapping of silicate rocks using TIMS”, In Proc. TIMS Data User’s
Workshop, JPL Publ. 83-38 (Pasadena, CA), pp. 29-44 (1986).
[24] Gillespie, A., et al., ”A temperature and emissivity separation algorithm for Advanced Spaceborne Thermal Emission and Reflection Radiometer (ASTER) images”, IEEE Trans. Geosc.
Remote Sensing, Vol. 36, 1113-1126 (1998).
[25] Gu, D., and Gillespie, A., ”Topographic normalization of Landsat TM images of forest based
on subpixel sun - canopy - sensor geometry”, Remote Sensing of Environment, Vol. 64, 166-175
(1998).
[26] Guanter, L., Richter, R., and Moreno, J., ”Spectral calibration of hyperspectral imagery using
atmospheric absorption features”, Applied Optics, Vol. 45, 2360-2370 (2006).
[27] Guanter, L., Richter, R., and Kaufmann, H., ”On the application of the MODTRAN4 atmospheric radiative transfer code to optical remote sensing”, accepted for publication, Int. J.
Remote Sensing, 30(6), 14071424, doi:10.1080/01431160802438555 (2009).
References
195
[28] Hay, J. E., and McKay, D. C., ”Estimating solar irradiance on inclined surfaces: a review and
assessment of methodologies”, Int. J. Solar Energy, Vol. 3, 203-240 (1985).
[29] Huete, A. R., ”A soil adjusted vegetation index (SAVI)”, Remote Sensing of Environment,
Vol. 25, 295-309, (1988).
[30] Idso, S. B., and Jackson, R. D., ”Thermal radiation from the atmosphere”, J. Geophysical
Research, Vol. 74, 5397-5403, (1969).
[31] Isaacs, R. G., Wang, W-C., Worsham, R. D., and Goldberg, S., ”Multiple scattering LOWTRAN and FASCODE models”, Applied Optics, Vol. 26, 1272-1281, (1987).
[32] Kahle, A. B., et al., ”Middle infrared multispectral aircraft scanner data analysis for geological
applications”, Applied Optics, Vol. 19, 2279-2290 (1980).
[33] Kamstrup, N., and Hansen, L. B., ”Improved calibration of Landsat-5 TM applicable for
high-latitude and dark areas”, Int. J. Remote Sensing, Vol. 24, 5345-5365 (2003).
[34] Chander, G., Markham, B. L., and Helder, D. L., ”Summary of current radiometric calibration
coefficients for Landsat MSS, TM, ETM+, and EO-1 ALI sensors”, Remote Sens. Environm.,
Vol. 113, 893-903 (2009).
[35] Fontenla, J. M., Curdt, W and Haberreiter, M., Harder J., and Tian, H.,”Semiempirical Models
of the Solar Atmosphere. III. Set of Non-LTE Models for Far-Ultraviolet/Extreme-Ultraviolet
Irradiance Computation The Astrophysical Journal, 707:482-502 (2009).
[36] Fontenla, J. M., Harder, J., Livingston, W., Snow, M., and Woods, T., ”High-resolution solar
spectral irradiance from extreme ultraviolett to far infrared”, J. Geophys. Res., Vol. 116,
D20108, 31pp., (2011).
[37] Fraser, R. S., Bahethi, O.P., and Al-Abbas, A. H., ”The effect of the atmosphere on classification of satellite observations to identify surface features”, Remote Sens. Environm., Vol. 6,
229-249 (1977).
[38] Kaufman, Y. J., and Sendra, C., ”Algorithm for automatic atmospheric corrections to visible
and near-IR satellite imagery”, Int. J. Remote Sensing, Vol. 9, 1357-1381 (1988).
[39] Kaufman, Y. J., et al. ”The MODIS 2.1 µm channel - correlation with visible reflectance for
use in remote sensing of aerosol”, IEEE Transactions on Geoscience and Remote Sensing, Vol.
35, 1286-1298 (1997).
[40] Kobayashi, S., and Sanga-Ngoie, K., ”The integrated radiometric correction of optical remote
sensing imageries” Int. J. Remote Sensing, Vol. 29, 5957-5985 (2008).
[41] Kobayashi, S., and Sanga-Ngoie, K., ”A comparative study of radiometric correction methods
for optical remote sensing imagery: the IRC vs. other image-based C-correction methods”,
Int. J. Remote Sensing, Vol. 30, 285-314 (2009).
[42] Irish, R. R., Barker, J. L., Goward, S. N., and Arvidson, T., ”Characterization of the Landsat7 ETM+ automated cloud-cover assessment (ACCA) algorithm”, Photogr. Eng. Remote Sens.
Vol. 72, 1179-1188 (2006).
[43] Yi, C. Y., ”Haze reduction from the visible bands of Landsat TM and ETM+ images over a
shallow water reef environment”, Remote Sens. Environm., Vol. 112, 1773-1783 (2008).
References
196
[44] Liang, S., Falla-Adl, H., Kalluri, S., Jaja, J., Kaufman, Y. J., and Townshend, J. R. G., ”An
operational atmospheric correction algorithm for Landsat Thematic Mapper imagery over the
land”, J. Geophys. Res., Vol. 102, D14, 17,173-17,186 (1997).
[45] Ackerman, S. A., Strabala, K. I., Menzel, W. P., Frey, R. A., Moeller, C. C., and Gumley,
L. E., ”Discriminating clear sky from clouds with MODIS”, J. Geophys. Res., Vol. 103, D24,
32,141-32,157 (1998).
[46] Krause,
K.,
”Radiance
conversion
of
QuickBird
data”,
Technical
RS TN radiometric radiance 4002, http://www.digitalglobe.com, Digital Globe,
Pike Road, Longmont, CO 80501, USA (2003).
note
1900
[47] Kriebel, K. T., ”Measured spectral bidirectional reflection properties of four vegetated surfaces”, Applied Optics, Vol. 17, 253-259 (1978).
[48] Mouroulis, P., Green, R. O., and Chrien, T. G., ”Design of pushbroom imaging spectrometers
for optimum recovery of spectroscopic and spatial information”, Applied Optics, Vol. 39, 22102220 (2000).
[49] Moran, M. S., Clarke, T. R., Inoue, Y., and Vidal, A., ”Estimating crop water deficit using
the relation between surface-air temperature and spectral vegetation index”, Remote Sensing
of Environment, Vol. 49, 246-263 (1994).
[50] Murray, F. W., ”On the computation of saturation vapor pressure”, J. Applied Meteorology,
Vol. 6, 203-204, (1967).
[51] Stamnes, K., Tsay, S. C., Wiscombe, W. J., and Jayaweera, K., ”Numerically stable algorithm
for discrete-ordinate-method radiative transfer in multiple scattering and emitting layered
media”, Applied Optics, Vol. 27, 2502-2509 (1988).
[52] Nicodemus, F. E., ”Reflectance nomenclature and directional reflectance and emissivity”, Applied Optics, Vol. 9, 1474-1475 (1970).
[53] Parlow, E., ”Net radiation of urban areas”, Proc. 17th EARSeL Symposium on Future Trends
in Remote Sensing, Lyngby, Denmark, 17-19 June 1997, pp. 221-226, Balkema, Rotterdam
(1998).
[54] Riano, D., Chuvieco, E., Salas, J., and Aguado, I., ”Assessment of different topographic
corrections in Landsat-TM data for mapping vegetation types”, IEEE Trans. Geoscience and
Remote Sensing, Vol. 41, 1056-1061 (2003).
[55] Richter, R., ”Derivation of temperature and emittance from airborne multispectral thermal
infrared scanner data”, Infrared Phys. Technol., Vol. 35, 817-826 (1994).
[56] Richter, R., ”A spatially adaptive fast atmospheric correction algorithm”, Int. J. Remote
Sensing, Vol. 17, 1201-1214 (1996).
[57] Richter, R., ”Atmospheric correction of satellite data with haze removal including a haze/clear
transition region”, Computers & Geosciences, Vol. 22, 675-681 (1996).
[58] Richter, R., ”On the in-flight absolute calibration of high spatial resolution spaceborne sensors
using small ground targets”, Int. J. Remote Sensing, Vol. 18, 2827-2833 (1997).
References
197
[59] Richter, R., ”Correction of satellite imagery over mountainous terrain”, Applied Optics, Vol.
37, 4004-4015 (1998).
[60] Richter, R., ”Bandpass-resampling effects on the retrieval of radiance and surface reflectance”,
Applied Optics, Vol. 39, 5001-5005 (2000).
[61] Richter, R., and Coll, C., ”Bandpass-resampling effects for the retrieval of surface emissivity”,
Applied Optics, Vol. 41, 3523-3529 (2002).
[62] Richter, R., and Schl¨
apfer, D., ”Geo-atmospheric processing of airborne imaging spectrometry
data. Part 2: atmospheric / topographic correction.”, Int. J. Remote Sensing, Vol. 23, 26312649 (2002).
[63] Richter, R., and M¨
uller, A., ”De-shadowing of satellite/airborne imagery”, Int. J. Remote
Sensing, Vol. 26, 3137-3148 (2005).
[64] Richter, R., Schl¨
apfer, D., and M¨
uller, A., ”An automatic atmospheric correction algorithm
for visible/NIR imagery”, Int. J. Remote Sensing, Vol. 27, 2077-2085 (2006).
[65] Richter, R., Bachmann, M., Dorigo, W., Mueller, A., ”Influence of the adjacency effect on
ground reflectance measurements”, IEEE Geoscience Remote Sensing Letters, Vol. 3, 565-569
(2006).
[66] Richter, R., and Schl¨
apfer, D., ”Considerations on water vapor and surface reflectance retrievals for a spaceborne imaging spectrometer”, IEEE Trans. Geoscience Remote Sensing,
Vol. 46, 1958-1966 (2008).
[67] Richter, R., Kellenberger, T., and Kaufmann, H., ”Comparison of topographic correction
methods”, Remote Sensing, Vol. 1, 184-196 (2009).
[68] Richter, R., ”Atmospheric / topographic correction for satellite imagery: ATCOR-2/3 User
Guide”, DLR IB 565-01/11, Wessling, Germany (2011).
[69] Richter, R., ”Atmospheric / topographic correction for airborne imagery: ATCOR-4 User
Guide”, DLR IB 565-02/12, Wessling, Germany (2012).
[70] Richter, R., Schl¨
apfer, D., and M¨
uller, A., ”Operational atmospheric correction for imaging
spectrometers accounting the smile effect”, IEEE Trans. Geoscience Remote Sensing, Vol. 49,
1772-1780 (2011).
[71] Richter, R., Wang, X., Bachmann, M., and Schl¨apfer, D., ”Correction of cirrus effects in
Sentinel-2 type of imagery”, Int. J. Remote Sensing, Vol.32, 2931-2941 (2011).
[72] Rodger, A., and Lynch, M. J., ”Determining atmospheric column water vapour in the 0.4-2.5
µm spectral region”, Proceedings of the AVIRIS Workshop 2001, Pasadena, CA (2001).
[73] Salisbury, J. W., and D’Aria, D. M., ”Emissivity of terrestrial materials in the 8-14 µm atmospheric window”, Remote Sensing of Environment, Vol. 42, 83-106 (1992).
[74] Santer, R., et al., ”SPOT Calibration at the La Crau Test Site (France)”, Remote Sensing of
Environment, Vol. 41, 227-237 (1992).
[75] Schl¨apfer, D., Borel, C. C., Keller, J., and Itten, K. I., ”Atmospheric precorrected differential
absorption technique to retrieve columnar water vapor”, Remote Sensing of Environment, Vol.
65, 353-366 (1998).
References
198
[76] Schl¨apfer, D., and Richter, R., ”Geo-atmospheric processing of airborne imaging spectrometry data. Part 1: parametric orthorectification.”, Int. J. Remote Sensing, Vol. 23, 2609-2630
(2002).
[77] Schl¨apfer, D. ”PARGE, User Guide, Version 3.0”, ReSe Applications Schlpfer, Wil, Switzerland, (2010).
[78] Schowengerdt, R. A., ”Remote Sensing, Models and Methods for Image Processing”, 3rd
Edition, Elsevier (Academic Press), (2007).
[79] Sirguey, P., ”Simple correction of multiple reflection effects in rugged terrain”, Int. J. Remote
Sensing, Vol. 30, 1075-1081 (2009).
[80] Slater, P. N., ”Remote Sensing, Optics and Optical Systems”, Addison-Wesley, London (1980).
[81] Slater, P. N., ”Radiometric considerations in remote sensing”, Proc. IEEE, Vol. 73, 997-1011
(1985).
[82] Slater, P. N., et al., ”Reflectance and radiance-based methods for the in-flight absolute calibration of multispectral sensors”, Remote Sensing of Environment, Vol. 22, 11-37 (1987).
[83] Soenen, S., A., Peddle, D. R.,and Coburn, C. A., ”SCS+C: a modified sun - canopy - sensor
topographic correction in forested terrain”, IEEE Trans. Geoscience and Remote Sensing, Vol.
43, 2148-2159 (2005).
[84] Sutherland, R. A., ”Broadband and spectral emissivities (2-18 µm) of some natural soils and
vegetation, Journal of Atmospheric and Oceanic Technology, Vol. 3, 199-202, (1986).
[85] Teillet, P. M., Guindon, B., and Goodenough, D.G., ”On the slope-aspect corrextion of multispectral scanner data”, Canadian J. Remote Sensing, Vol. 8, 84-106, (1982).
[86] Wiegand, C. L., Gerbermann, A. H., Gallo, K. P., Blad, B. L., and Dusek, D., ”Multisite
analyses of spectral-biophysical data for corn”, Remote Sensing of Environment, Vol. 33, 1-16,
(1990).
[87] Wiegand, C. L., Richardson, A. J., Escobar, D. E., and Gerbermann, A. H., ”Vegetation
indices in crop assessments”, Remote Sensing of Environment, Vol. 35, 105-119, (1991).
[88] Wolfe, W. L., and Zissis, G. J., ”The Infrared Handbook”, Office of Naval Research, Washington, DC., (1985).
[89] Young, S. J., Johnson, B. R., and Hackwell, J. A., ”An in-scene method for atmospheric
compensation of thermal hyperspectral data”, J. Geophys. Research, Vol. 107, No. D24, 47744793 (2002).
[90] Zhang, Y., Guindon, B., and Cihlar, J., ”An image transform to characterize and compensate
for spatial variations in thin cloud contamination of Landsat images”, Remote Sensing of
Environment, Vol. 82, 173-187 (2002).
Appendix A
Altitude Profile of Standard
Atmospheres
This chapter contains the altitude profiles of ATCOR’s standard atmospheres that are based on
the MODTRAN code. Only the lower 5 km altitudes are shown, since this region has the largest
influence on the radiative transfer results and usually comprises about 90-95% of the total water
vapor column. For multispectral sensors without water vapor bands, e.g., Landsat TM or SPOT,
the selection of the atmosphere should be coupled to the season of the image data acquisition. The
influence of a large error in the water vapor estimate (e.g., 50%) on the reflectance retrieval is
usually very small (about 1-2% reflectance at a reflectance level of 40% for Landsat TM band 4).
However, for sensors with water vapor bands (e.g., MOS-B or hyperspectral sensors) the water
vapor content plays an important role. For these sensors the database contains files with four water
vapor columns (2.9, 2.0, 1.0, 0.4 cm). These are used to generate interpolated and extrapolated
values for the LUTs. In analogy to the files for the airborne version of ATCOR the file names are
”h99000 wv29 rura.atm”, ”h99000 wv20 rura.atm”, etc., where the h99000 indicates the symbolic
height of 99000 m used for satellites, the water vapor column content wv (cm or g cm−2 ) is scaled
with 10, and the aerosol type is included in the last part of the name.
altitude
(km)
0
1
2
3
4
5
pressure
(mbar)
1013
904
805
715
633
559
temperature
(◦ C)
26.4
20.4
14.4
10.4
3.8
-3.0
rel. humidity
(%)
7.5
7.3
7.4
4.8
3.5
3.8
abs. humidity
(gm−3 )
1.9
1.3
0.9
0.5
0.2
0.1
Table A.1: Altitude profile of the dry atmosphere. Total (ground-to-space) water vapor content = 0.41 (cm
or g cm−2 ).
199
APPENDIX A. ALTITUDE PROFILE OF STANDARD ATMOSPHERES
altitude
(km)
0
1
2
3
4
5
pressure
(mbar)
1018
897
789
694
608
531
temperature
(◦ C)
-1.0
-4.5
-8.0
-11.5
-17.5
-23.5
rel. humidity
(%)
77
70
65
57
50
47
200
abs. humidity
(g/m−3 )
3.5
2.5
1.8
1.2
0.7
0.4
Table A.2: Altitude profile of the midlatitude winter atmosphere. Total (ground-to-space) water vapor
content = 0.85 (cm or g cm−2 ).
altitude
(km)
0
1
2
3
4
5
pressure
(mbar)
1013
902
802
710
628
554
temperature
(◦ C)
10.0
3.0
-1.0
-5.0
- 9.0
-14.0
rel. humidity
(%)
56
47
41
40
40
40
abs. humidity
(g/m−3 )
5.2
2.8
1.9
1.4
1.0
0.6
Table A.3: Altitude profile of the fall (autumn) atmosphere. Total (ground-to-space) water vapor content
= 1.14 (cm or g cm−2 )
altitude
(km
0
1
2
3
4
5
pressure
(mbar)
1013
900
795
701
616
540
temperature
(◦ C)
15.0
8 .5
2.0
-4.5
-11.0
-17.5
rel. humidity
(%)
46
49
52
51
50
48
abs. humidity
(g/m−3 )
5.9
4.2
2.9
1.8
1.1
0.6
Table A.4: Altitude profile of the 1976 US Standard. Total (ground-to-space) water vapor content = 1.42
(cm or g cm−2 ).
APPENDIX A. ALTITUDE PROFILE OF STANDARD ATMOSPHERES
altitude
(km)
0
1
2
3
4
5
pressure
(mbar)
1010
896
792
700
616
541
temperature
(◦ C)
14.0
8.5
3.1
-2.3
-7.7
-13.1
rel. humidity
(%)
75
70
70
65
60
53
201
abs. humidity
(g/m−3 )
9.1
6.0
4.2
2.7
1.7
1.0
Table A.5: Altitude profile of the subarctic summer atmosphere. Total (ground-to-space) water vapor
content = 2.08 (cm or g cm−2 ).
altitude
(km)
0
1
2
3
4
5
pressure
(mbar)
1013
902
802
710
628
554
temperature
(◦ C)
21.0
16.5
12.0
6.0
0.0
-6.0
rel. humidity
(%)
76
66
55
45
39
31
abs. humidity
(g/m−3 )
13.9
9.3
5.9
3.9
1.9
1.0
Table A.6: Altitude profile of the midlatitude summer atmosphere. Total (ground-to-space) water vapor
content = 2.92 (cm or g cm−2 ).
altitude
(km)
0
1
2
3
4
5
pressure
(mbar)
1013
904
805
715
633
559
temperature
(◦ C)
26.4
20.4
14.4
10.4
3.8
-3.0
rel. humidity
(%)
75
73
74
48
35
38
abs. humidity
(g/m−3 )
18.9
13.0
9.3
4.7
2.2
1.5
Table A.7: Altitude profile of the tropical atmosphere. Total (ground-to-space) water vapor content = 4.11
(cm or g cm−2 ).
Appendix B
Comparison of Solar Irradiance
Spectra
The following two plots show the relative differences between two extraterrestrial solar irradiance
sources:
• Kurucz 1997 (distributed with MODTRAN, Berk et al. 2008 [6]). The previous highresolution (”monochromatic”) databases of ATCOR were calculated with this spectrum.
• Fontenla 2011 (Fontenla et al., 2009, 2011 [35, 36]). The new ATCOR release uses the
improved quiet sun spectrum of Fontenla and co-workers, also referred to as ”low activity
sun”.
As explained in chapters 5.7.10, 5.7.11 the user can convert the database of atmospheric look-up tables from one solar irradiance source to another one, provided that the spectral range and sampling
distance agrees with the template spectra in the ”sun irradiance” directory of ATCOR. Currently,
irradiance spectra of Kurucz 1997, Kurucz 2005 (distributed with MODTRAN [6]), and Fontenla
2011 are offered.
The plots show the detailed information (line structure) contained in the Fontenla spectrum. The
curves with 2.8 nm and 10 nm represent results based on a moving average of the the 0.4 nm data
over 7 and 25 spectral points, respectively.
202
APPENDIX B. COMPARISON OF SOLAR IRRADIANCE SPECTRA
203
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement