Environments | PYTHON :: EASI :: MODELER |
Batch Mode | Yes |
Quick links | Description :: Parameters :: Parameter descriptions :: Details :: Algorithm :: Acknowledgements :: References :: Related |
Back to top |
Back to top |
Back to top |
InputRLUT: Radiance LUT segment
Specifies the input segment that contains the radiance lookup table.
Input: Input file name
Specifies the name of the input file containing the data set to be corrected.
InputDEM: Input DEM channel
Specifies the input channel containing a DEM map of the scene to be corrected.
If this parameter is not specified, a nominal elevation, specified by the Nominal Elevation parameter, is used over the entire scene.
Only one channel may be specified.
InputAOD: Input aerosol optical depth map
Specifies the input channel containing an aerosol optical depth map of the scene to be corrected.
If this parameter is not specified, the Nominal Aerosol Optical Depth is used over the entire scene.
Only one channel may be specified.
The Aerosol Optical Depth (DBAOD) parameter is used as an alternative to the Surface Meteorological Range (DBSMR) parameter; only one of these two parameters may be specified.
InputSMR: Input surface meteorological range
Specifies the input channel containing a surface meteorological range map of the scene to be corrected.
If this parameter is not specified, the Nominal Surface Meteorological Range is used over the entire scene.
Only one channel can be specified.
The Surface Meteorological Range (DBSMR) parameter is used as an alternative to the Aerosol Optiocal Depth (DBAOD) parameter; only one of these two parameters may be specified.
InputWVC: Input vertical water vapor column map
Specifies the input channel containing a vertical water vapor column map of the scene to be corrected.
If this parameter is not specified, the Nominal Vertical Water Vapor Column value is used over the entire scene.
Only one channel can be specified.
Output: Output spectral line curvature correction LUT
Specifies the channel in the output file to receive the output spectral line curvature correction lookup table.
Radiometric Transformation Level
Specifies the radiometric transformations already associated with the data set that are to be applied to the stored pixel values before they are involved in the smile correction computations. By default, the full sequence of transformations is applied.
This parameter has no effect if the data set metadata contains no radiometric transformation parameter values.
Nominal Vertical Water Vapor Column
Specifies a nominal vertical water vapor column value (in g/cm^2)to be used over the entire scene. If the RLUT was created by leaving the vertical water vapor column settings unspecified in GENTP5 and GENRLUT, this parameter should be left unspecified. If the input water vapor column channel (DBWVC) is specified, this parameter is ignored.
Nominal Aerosol Optical Depth
Specifies a nominal aerosol optical depth to be used over the entire scene. If either an input aerosol optical depth map (DBAOD) or an input surface meteorological range map (DBSMR) is specified, this parameter is ignored.
If the RLUT was created by leaving the surface meteorological range settings unspecified in GENTP5 and GENRLUT, this parameter should be left unspecified.
The Nominal Aerosol Optical Depth (NOMAOD) parameter is used as an alternative to the Nominal Surface Meteorological Range value (NOMSMR); only one of these two parameters can be specified.
Nominal Surface Meteorological Range
Specifies a nominal surface meteorological range value (in km) to be used over the entire scene. If either an input aerosol optical depth map (DBAOD) or an input surface meteorological range map (DBSMR) is specified, this parameter is ignored.
If the RLUT was created by leaving the surface meteorological range settings unspecified in GENTP5 and GENRLUT, this parameter should be left unspecified.
The Nominal Surface Meteorological Range value (NOMSMR) parameter is used as an alternative to the Nominal Aerosol Optical Depth (NOMAOD); only one of these two parameters can be specified.
Nominal Elevation
Specifies a nominal elevation value (in meters with respect to the WGS84 vertical datum) to be used for the entire scene.
Either a Nominal Elevation (NOMELEV) value or an Input DEM value (DBDEM) must be specified. If an Input DEM value (DBDEM) is specified, this parameter is ignored.
Spectrum Filter Type
Specifies the type of filter to use for filtering the band vectors.
Filter Width
Specifies the filter width, in nanometers. The default is 30nm. For a Gaussian convolution filter, the width is the standard deviation of the Gaussian function.
Filter Size
Specifies the high pass filter size, in samples. The default is 3.
Atm. Feature Range Start
Specifies the start wavelength of each atmospheric feature to be used for smile correction, in nanometers.
At least three atmospheric features must be specified, to a maximum of 16. No overlapping of atmospheric features is allowed.
Atm. Feature Range End
Specifies the end wavelength of each atmospheric feature to be used for smile correction, in nanometers.
At least three atmospheric features must be specified, to a maximum of 16. No overlapping of atmospheric features is allowed.
Wavelength Shifts
Specifies the wavelength shifts to be applied to the target sensor.
All shifts are considered to be in nanometers (nm). The start and end shifts will be adjusted to ensure that a shift of 0 nm belongs to the shift grid.
Bandwidth Shifts
Specifies the bandwidth shifts to be applied to the target sensor.
All shifts are considered to be in percentage of the original band response profile bandwidths. The start and end shifts will be adjusted to ensure that a shift of 0% belongs to the shift grid.
Fit Region Start Band
Specifies the start band of each fit region.
A maximum 16 fit regions can be specified. No overlapping of fit regions is allowed. This value defaults to a single fit region encompassing all sensor bands.
Fit Region End Band
Specifies the end band of each fit region.
A maximum 16 fit regions can be specified. No overlapping of fit regions is allowed. This value defaults to a single fit region encompassing all sensor bands.
Fit Region Interpolation Method
Specifies the fit region interpolation method to be used.
Wavelength Polynomial Fit Order
Specifies the wavelength polynomial fit order for each fit region.
If the fit region interpolation method (FRMETHOD) is set to PIECEWISE, this parameter is ignored.
The number of values specified for this parameter must match the number of fit regions specified. Polynomial orders of 0 to 10 are supported. If insufficient atmospheric features are selected for the fit regions, the polynomial order will be automatically reduced. If this parameter is not specified, it defaults to 2.
Bandwidth Polynomial Fit Order
Specifies the bandwidth polynomial fit order for each fit region.
If the fit region interpolation method (FRMETHOD) is set to PIECEWISE, this parameter is ignored.
The number of values specified for this parameter must match the number of fit regions specified. Polynomial orders of 0 to 10 are supported. If insufficient atmospheric features are selected for the fit regions, the polynomial order will be automatically reduced. If this parameter is not specified, it defaults to 2.
Swath Polynomial Fit Order
Specifies the swath polynomial fit order.
Polynomial orders of 0 to 10 are supported. If the data set crosstrack dimensions are insufficient for the selected fit order, the polynomial order will be automatically reduced. If this parameter is not specified, it defaults to 2.
Back to top |
Spectral line curvature (also called "spectral smile") is a feature of image data acquired with a pushbroom-type imaging spectrometer employing a two-dimensional detector array. This is a common design for imaging spectrometers. When an image that exhibits spectral line curvature is atmospherically corrected by a method that relies on accurate center-wavelength and FWHM data for the image bands, the along-band dimension of the result may exhibit noise (spiking) in the neighborhood of absorption bands.
If the amount of such noise is small enough, it may be removed effectively enough for practical purposes by smoothing (see SMSPEC). The amount of noise is often so large, however, that the degree of smoothing required to remove it will distort the data. It is often preferable to reduce spectral line curvature from the data before performing atmospheric correction, to reduce the amount of smoothing required afterwards.
Spectral line curvature occurs when the image of the spectrometer entrance slit within a particular waveband does not fall entirely on the detector array row that corresponds to that waveband. The slit-image may curve (or "smile") such that it intersects multiple detector array rows. In general, spectral line curvature will affect all wavebands of an image to a varying degree.
A correction for spectral line curvature consists of shifts to the nominal center-wavelength and FWHM values associated with the image data that are a function of image line coordinate (the image line dimension maps to the detector array row dimension) and band. GENCLUT generates a two-dimensional spectral line curvature lookup table (CLUT) that contains such correction shifts.
The generated CLUT may then be used by SLCCOR to adjust the data set response profiles before they are used to resample the radiance lookup table.
CLUT format
The spectral line curvature lookup table (CLUT) is a two-dimensional array.
One or more samples are identified on each dimension. The crosstrack dimension contains a number of samples equal to the crosstrack image dimension for which smile detection was performed. The band dimension contains a number of samples equal to the number of hyperspectral bands present in the input image.
A CLUT is stored exclusively in a PCIDSK binary segment. One CLUT can be stored per segment. All CLUT attributes are saved as metadata for that binary segment.
Upon saving the CLUT to disk, the CLUT entries are serialized into a system-independent byte stream and written to the binary segment.
Back to top |
The method described here uses the atmospheric absorption features combined with selected Fraunhofer lines in the exo-atmospheric irradiance as spectral calibration references. The accuracy of the results is dependent upon the validity of the atmospheric absorption model.
Simply stated, the absorption features in the measured radiance are compared to those in a modeled, at-sensor radiance, calculated using MODTRAN. The difficulty is in knowing what to use as the target reflectance in the calculation of the modeled radiance. If one had a test area for which the reflectances were known for the whole area, these could be used; however, even if the scene were to contain a radiometric validation test site, it would have insufficient spatial extent for most sensors, especially for satellite-borne instruments. In most cases, the reflectance spectra are unknown, and one must calculate them using the sensor signal data. This is done by performing an atmospheric correction to extract the at-ground reflectances, using the sensor's nominal band-center wavelength and bandwidth values. Because these are generally incorrect, spikes occur in the neighborhood of the atmospheric features. These spikes are suppressed by spectral smoothing over the affected regions to provide approximate reflectance spectra for the scene. These reflectances are then input to the radiance modeling process to achieve the at-sensor modeled radiance spectra. To ensure that the measured spectra have the best possible signal-to-noise ratios, the scene pixels are averaged along-track over a large number of image lines to provide a single spectral-spatial radiance frame.
GENCLUT employs a lookup table (LUT) approach for performing the atmospheric correction. A "raw" LUT is created for the date, time, location, elevation, and appropriate atmospheric conditions, using GENTP5, the MODTRAN4 radiative transfer code, and GENRLUT. In a typical atmospheric correction procedure, a sensor-specific LUT is created by convolving the band response profiles with the "raw" LUT values. This "convolved" LUT is then sampled at a sensor's band wavelength values. In the smile detection procedure, the LUT spectra are convolved on the fly as required for each band-center and bandwidth shift.
The absorption features selected for this procedure depend upon the spectral resolution and signal-to-noise of the sensor under study. The deeper and better-resolved the feature appears in the measured spectra, the lower the error estimates of the resulting wavelength measurements. The comparison between the measure and modeled radiance spectra is performed separately for each selected absorption feature. The wavelength estimates for each of theses features and for each across-track pixel are extended to all elements in the array by interpolation or extrapolation. For this, either a low-order polynomial fit or a piecewise linear interpolation is used.
The comparison process calculates the Pearson correlation coefficients for each of the band-center-shift and bandwidth values. Minimization is then performed within the selected shift range using the bisection method. The band-center and bandwidth combination that provides the maximum correlation value is selected as the "correct" value. This is performed for each of the selected features and for each across-track pixel, providing the shift, and hence, the band-center wavelength and bandwidth values for each pixel across the sensor's total field of view. To reduce the potential influence of the background scene reflectance, features are chosen which are spectrally narrow or which consist of a number of narrow sub-features, and which are still resolvable by the instrument under study. In addition, both the measured spectra and the modeled spectra are filtered with a high-pass filter before the correlations are performed, again to reduce the influence of the scene reflectance.
If the pixel-to-pixel uniformity (responsivity) coefficients are not sufficiently accurate to eliminate striping in those bands involved in the features analyses, errors in the wavelength estimates will result. To cancel these effects and those caused by the discrete shift increment, a low-order polynomial is fitted to the final band-center and bandwidth values. Normally, a second-order polynomial is adequate, and is in keeping with theory for the grate spectrometer case, where a cosine dependence is predicted. This assumes that the angular range (at the grating) is small.
This procedure gives the band-center wavelength and bandwidth values for all the across-track pixels in the neighborhoods of the atmospheric and solar absorption features observed in the sensor spectral data. To obtain calibrated values for all bands in the array, one can interpolate between the selected feature wavelengths using a fitted low-order polynomial; extrapolation to bands beyond the range spanned by these features must be done with care. GENCLUT uses a 0-th order polynomial extrapolation to replicate the boundary values beyond the selected features range.
The following is a summary of the described algorithm:
For each cross-track pixel { Average the at-sensor radiance image along-track to yield a single measured at-sensor radiance spectrum. High-pass filter the wavelength dimension of the measured at-sensor radiance spectrum. For each selected band-center and bandwidth shift { Shift the center-wavelength and FWHM values of the band response profiles for all bands. Convolve the "raw" LUT with the shifted band response profiles. For each along-track pixel { Use the resampled LUT to transform the original (non-high- pass filtered) radiance spectra to reflectance spectra. Smooth the atmospheric features of the reflectance spectrum. Smooth the full reflectance spectrum. Transform the smoothed reflectance spectrum back to an at-sensor radiance spectrum. } Average the modeled along-track at-sensor radiance spectra to yield a single modeled at-sensor radiance spectrum. High-pass filter the modeled at-sensor radiance spectrum. Compute the Pearson correlation coefficient for each atmospheric feature of the modeled at-sensor radiance spectra and the measured at-sensor radiance spectrum. } For each atmospheric feature { Use the computed grid of correlation coefficients for all band-center and bandwidth shifts to find the maximum correlation coefficient and its corresponding band-center and bandwidth shift. Store the best band-center and FWHM adjustment, in association with the cross-track pixel coordinate and the representative mean band number of the atmospheric feature. } } For each atmospheric feature { Fit a SWFORDER order polynomial to the center-wavelength shift as a function of cross-track coordinate. Fit a SWFORDER order polynomial to the FWHM shift as a function of cross-track coordinate. } For each cross-track coordinate { For each fit region { Interpolate and extrapolate the swath fitted band-center shifts over the fit region band range using a WLFORDER order polynomial or a linear piecewise method depending on the value of FRMETHOD. Interpolate and extrapolate the swath fitted FWHM shifts over the fit region band range using a BWFORDER order polynomial or a linear piecewise method depending on the value of FRMETHOD. } } Save the final shifts in the CLUT table.
Back to top |
PCI Geomatics received financial support from the Canadian Space Agency/L'Agence Spatiale Canadienne through the Earth Observation Application Development Program (EOADP) for the development of this software, under contract 9F028-0-4914/09.
Back to top |
R.A. Neville, L. Sun, K. Staenz, 2003. Detection of Spectral Line Curvature In Imaging Spectrometer Data, "Proceedings of AeroSense: Algorithms and Technologies for Multispectral, Hyperspectral, and Ultraspectral Imagery IX," 21-25 April 2003, Orlando, Florida.
© PCI Geomatics Enterprises, Inc.®, 2024. All rights reserved.