The ability to accurately model the atmosphere is crucial to developing a robust scene modeling tool. The atmosphere is a major contributor in the imaging chain, considerably affecting the path characteristics of light and, therefore, the spectral radiance reaching a sensor. The atmosphere absorbs some of the surface leaving radiance (path transmission) in the scene and contributions additional radiance due to scattering and self-emission (path radiance). Since many algorithms are affected by these atmospheric contributions, it is important to model these phenomena faithfully.
In order to model the atmosphere with acceptable fidelity, the DIRSIG model uses an external atmospheric propagation model, known as MODTRAN. MODTRAN is an atmospheric radiative transfer code created and supported by the United States Air Force (to learn how to acquire the latest version of MODTRAN, see Section 2.4.2). It has the ability to model the atmosphere under a variety of atmospheric conditions. It can predict atmospheric properties including path radiances, path transmission, sky radiances and surface reaching solar and lunar irradiance for a wide range of wavelengths and spectral resolutions.
DIRSIG uses MODTRAN when it calculates any atmospheric property during image rendering. It does this by first creating a "look up table" (LUT) of MODTRAN outputs for a variety of geometries. This look up table is stored in an Atmospheric Database File (ADB) and contains all of the spectral information that DIRSIG will need for any geometry encountered during rendering. This file is created by the make_adb program which is included in the DIRSIG distribution. The specifics of how make_adb creates the ADB and how DIRSIG utilizes the ADB will be discussed in greater detail in future sections.
The MODTRAN model itself is an extremely complicated program which can only be accurately described in a document at least the size of this one. However, a DIRSIG model user needs to understand the basics of the model in order to create the necessary atmospheric database to perform their scene simulation.
The input to the MODTRAN program is a text file known as the tape5 file (see Example 8-1). This may look very non-intuitive, but this file contains all of the data that MODTRAN needs to run. Within the tape5 file, there are at least 6 "cards", and potential sub-cards. These cards contain either letters at correspond to input variables that control different features and mode in MODTRAN. A complete description of all of the details of the inputs can be found in the MODTRAN User's Manual, which should be included with the MODTRAN software.
The tape5 file can be modified by either a basic text editor, or with use of the tape5_edit program. This MODTRAN GUI is provided with the DIRSIG software and it allows the user to edit a tape5 file with greater ease. There are other free, shareware and commercial programs that can be used to edit the MODTRAN input file. Although editing the MODTRAN input file is possible via a text editor, it strongly suggested that a GUI program be used since the formatting of the file is so strict.
Example 8-1. An example MODTRAN input file
TS 2 2 2 -1 2 2 2 2 2 2 1 0 0 0.000 0.00
F 0F 0 0.00000 0 0 F F F 0.000
0 0 0 3 0 0 0.000 0.000 0.000 0.000 0.000
100.000 0.000 180.000 0.000 0.000 0.000 0 0.000
0 0 0 0
43.000 77.000 18.968 0.955 0.000 180.000 0.000 0.000
0.300 0.800 0.001 0.001TMtesting MT A
0
Each card or sub-card in the tape5 file (which is represented by a line in the text file), handles a different aspect of the atmosphere modeling to be performed. A general summary of these cards is provided below:
Summary of the primary tape5 cards
This card contains a list of options of how to run MODTRAN including atmospheric type (tropical, dessert, polar, etc.), geometry type (point to point, slant path to space, etc.), output preferences (transmission, radiance, or both), enable/disable multiple scattering, etc.
This card with some of the specifics of the difference multiple scattering options, as well as manipulation of the default solar radiance and irradiance values. Manipulation of default amounts of water vapor, carbon dioxide, and o-zone gas values can occur here as well. Finally, some preliminary sensor characteristics can be defined here, such as band and filter models.
This card controls the aerosols present in the atmosphere. As well, it controls the type and density of clouds and precipitation, and meteorological data such as wind speed, visibility, and precipitation rate.
This card allows the user to define the geometry of the path to be modeled.
This card defines the remaining spectral characteristics. It allows the user to define a spectral range and resolution, as well as host of output options such as passing the spectra through a choice of slit functions, degrading the spectra, and saving results for use with the next run.
MODTRAN produces outputs in the form of text files. The primary output file is named tape6 and it contains a log of the procedures MODTRAN executes during initialization including tables of the altitude dependent atmospheric species and a summary of various path geometry calculations. Finally, it contains the results in the form of a large spectral table at the end of the file. through. If MODTRAN encounters and error during execution, any error messages that the model produced will recorded at the end of this file.
Some of the addition output files that DIRSIG creates are the two tape7 files, which contain only the computed spectral data contained in the tape6 file. The two files are named tape7 and tape7.scn. The difference is that tape7.scn has the data at the resolution and the units specified in Card #4 of the tape5 file. The data in tape7.scn contains the data that the make_adb program will read and parse when creating the Atmospheric Database File. The make_adb program is described in the next section and in the The make_adb User Manual.