GENERIC LINEAR ARRAY SCANNER MODELING OF SPECTRAL IMAGING SYSTEMS CONTAINING LIMITED METADATA

The National Geospatial-Intelligence Agency (NGA) designed the Generic Linear Array Scanner (GLAS) model for geopositioning images from both airborne and spaceborne linear array scanning systems, including pushbroom, whiskbroom, and panoramic sensors. Providers of hyperspectral imagery (HSI) historically have not populated products with high fidelity metadata to support downstream photogrammetric processing. To demonstrate recommended metadata population and exploitation using the GLAS model, NGA has generated example HSI products using data collected by NASA’s EO-1 Hyperion sensor and provided courtesy of the U.S. Geological Survey. This paper provides novel techniques for: 1) generating reasonably accurate initial approximations for GLAS metadata as a function of per-image metadata consisting of only timing information and the latitude and longitude values of the four corners of the image; and 2) identifying a vector of adjustable parameters and reasonable values for its a priori error covariance matrix that enable corrections to the metadata during a bundle adjustment. The paper describes applying these techniques to fourteen overlapping Hyperion images of the Alps, running a bundle adjustment as a function of tie points and optional ground control points, and demonstrating superior results to the previous polynomial based approach as quantified by the 3D errors at several ground check points.


Problem Statement
The use of a geometric sensor model and photogrammetric processing enables co-registration of multiple overlapping images, 3D extraction of the terrain surface, and alignment of new images that become available such that change detection can be applied. The National Geospatial-Intelligence Agency (NGA) designed the Generic Linear Array Scanner (GLAS) model for geopositioning images from both airborne and spaceborne linear arraying scanning systems, including pushbroom, whiskbroom, and panoramic sensors. A team of scientists and software engineers built a library of sensor models, including the GLAS model, that has been incorporated into popular Electronic Light Tables (ELTs). NGA advocates that image products include metadata for at least one of the sensor models in the library, thereby enabling accurate geolocation, precise relative mensuration, and precise image registration and bundle adjustment to be performed by downstream users.
Providers of imagery to the photogrammetry and computer vision communities are known for providing high fidelity geopositioning metadata that can be recognized and applied by mapping software or research software either as a frame sensor model, potentially including lens distortions, or as rational polynomial coefficients (RPCs), which is a common replacement sensor model for linear array scanning imagery. However, providers of hyperspectral imagery (HSI) historically have not supplied high fidelity metadata to support downstream photogrammetric processing. To support low-cost integration of high-quality multi-(MSI) and hyperspectral imagery, the NGA has ratified the Spectral National Imagery Transmission Format (NITF) Implementation Profile (SNIP) for spectral NITF datasets, which recommends the GLAS model as the preferred geopositioning metadata for spectral linear array scanners. To demonstrate conformance with the SNIP, NGA has generated example HSI products using data collected by NASA's EO-1 Hyperion sensor and provided courtesy of the U.S. Geological Survey.

Overview of Approach
Previous work registering and geolocating from Hyperion images, e.g. (Dyk et al., 2002), has involved polynomials and rational functions, neither of which are based on a physical geometric projection model. Furthermore, geolocation has been performed and assessed in two dimensions; i.e., horizontally only.
This paper provides novel techniques for: 1) generating reasonably accurate initial approximations for GLAS metadata as a function of only the latitude and longitude values of the four corners of the image; and 2) identifying a vector of adjustable parameters and reasonable values for its a priori error covariance matrix that enable corrections to the metadata during a bundle adjustment. The paper describes applying these techniques to several overlapping Hyperion images of the Alps, running a bundle adjustment as a function of tie points and optional ground control points, and assessing the results based upon RMSE in the local x, y, and z directions at several ground check points.

Image Selection
Images for the study were selected using USGS's Earth Explorer. Figure 1 shows the footprints of four out of the total of fourteen images selected for the study and which overlap each other nominally 100%. The main criteria for image selection were mountainous terrain and multiple overlapping images from different look angles. The selected region is the Swiss Alps, also including small sections of Austria and Italy to the north and south, respectively.  Figure 2 shows the east and north components of the image ray unit vector for each of the 14 images. Note that the last character of each Image ID is a number which is either "2", "3", "4", or "5"; these numbers express how far off-nadir the satellite was looking and correspond to the colours blue, black, green, and blue, respectively. The ground tracks of the satellite were towards the south-southwest; thus, the dots are spread in the cross-track direction. Image 1 is the most oblique with an angle of 26 from zenith, Image 7 has an angle of 12 from zenith, and the convergence angle between these two extreme images is 38 .

Image Support Data
Image support data can be obtained from documentation, from the image metadata itself, or from external sources; these possibilities are discussed in the next three subsections.

From Documentation:
Published papers such as (Pearlman et al., 2003) contain information about the Hyperion sensor including its interior orientation and nominal flying altitude and field-of-view (FOV). The sensor has a 0.624 FOV in the cross-track direction divided into 256 pixels with a pixel pitch of 60 micrometres. The satellite platform orbital altitude is 705 km and it images a swath width of 7.7 km with nominally a 30 m GSD.

Example Image Chips
Tie points and GCPs were measured manually on the 14 images. Figures 3 shows an example of a GCP being measured on several of the Hyperion images (left) and Google Earth Pro (right). The point was the centre of a lake; although it is covered by the icon, you can see a second lake that is roughly the same size and shape located towards the upper left of the icon. Due to seasonal changes, such as snowfall in the winter, the scene looks different in some images; therefore, none of the tie points and GCPs could be measured on all of the images. Figure 4 shows each of the 14 images at a small scale, but large enough to observe differences in shadowing, cloud cover, and snow cover; ordering is chronological from Aug 7, 2015 to June 23, 2016.

GENERIC LINEAR ARRAY SCANNER (GLAS) METADATA GENERATION
The GLAS model, and its companion the Generic Framesequence Model (GFM) share the same set of up to seven "Common Sensor (CS)" Support Data Extensions (SDEs) which can take the form of either a Tagged Record Extension (TRE) or a Data Extension Segment (DES). Following is a list of five of the seven SDEs that are needed for Hyperion data; they will be discussed in more detail in their respective subsections: The first subsection of this section provides an overview of the projection model as a function of data from the first four SDEs. The subsequent five subsections serve the dual purpose of briefly defining each of the five SDEs followed with the details of metadata generation with the Hyperion data.

Image-to-Ground Projection Summary
Besides data in the GLAS SDEs, the inputs to the image-toground projection, without error propagation, include the line and sample image coordinates of the point of interest in the image and the height of the projection plane or digital elevation model (DEM) associated with the ground point. The following steps summarize the image-to-ground projection as a function of the line, sample, height, CSEXRB TRE, CSEPHB DES, CSATTB DES, and CSSFAB DES: • Compute time as a function of the line coordinate. This requires the start time, imaging duration, and number of lines from CSEXRB.

•
Use time to interpolate vehicle centre of mass position (ECF) from ephemeris data (CSEPHB) and attitude (Sensorto-ECF) from quaternion data (CSATTB), nominally using a 5 th order LaGrange Interpolation and 3 rd order LaGrange Interpolation, respectively. A focal length value should be interpolated from the values in CSSFAB; however, for Hyperion they are constant for a given image, and even for the entire mission unless they have undergone a bundle adjustment.

•
Use the lever-arm vector from CSSFAB and attitude obtained in the previous step to compute the perspective centre (ECF) as an offset to the vehicle centre of mass computed in the previous step.

•
Use the sample coordinate and field alignment data (CSSFAB) to compute the vector from the perspective centre to the imaged location on the focal plane in the sensor coordinate system, aka the remote imaging locus in the sensor system.

•
Use quaternions from a previous step to rotate the remote imaging locus in the sensor system to ECF, correct for atmospheric refraction and velocity aberration, and intersect the ray with the inflated WGS-84 Earth Ellipsoid.
Note that since some of the above steps are difficult to invert analytically, the ground-to-image projection has been implemented as an iterative solution that uses numerical partial derivatives to invert the image-to-ground function.

CSEXRB TRE
The CSEXRB TRE contains the date of image acquisition, time tags associated with exposure of a specific line of an image or frame, number of lines and samples in the collected image, and Universally Unique Identifiers (UUIDs) to associate image segments containing GLAS/GFM TREs with GLAS/GFM DESs in the same NITF file.
As discussed in Section 2.2.2, the date and time information, along with the number of rows in the image, is provided in the metadata of each image. UUIDs were not needed since each image product consisted of a single image segment with its own set of SDEs.

CSEPHB DES
The CSEXRB DES consists of time-tagged ephemeris data of the platform centre of mass in either the WGS 84 Earth-Centred Earth-Fixed (ECF) or the Earth-Centred Inertial (ECI) coordinate system, as specified by the data provider. Although the term ephemeris implies a spaceborne platform, the ephemeris data in the context of GLAS/GFM apply equally to airborne and ground platforms.
Two different levels of ephemeris knowledge were addressed in this study as discussed in the following two subsections. In each case, the data is ultimately supplied as a time history of ephemeris points in ECF at one Hz. The time spans from at least three seconds before image start to at least three seconds after image end in order to allow the use of fifth order LaGrange interpolation to obtain the ephemeris point associated with any point within the image.

Near-Nadir Approximation:
The inputs to the nearnadir approximation include the latitude and longitude values of the four corners of the image and an approximate mean terrain height across the entire ground footprint. The outputs of the nearnadir approximation include a time history of ephemeris points in ECF.
The processing steps in this subsection neglect the effect of Earth rotation for the duration of the image. The adjustable parameter model uses the concept of correction posts, discussed in Section 3.6, to allow for a time-dependent correction to occur during bundle adjustment. The first step is to average the two corner points at the first row and last row of the image and convert them from Geodetic to ECF to obtain two representative ground points, and , that correspond to the centre pixel of the array at image start and image end times, respectively. Then, these points are projected upwards to Hyperion's satellite altitude of 705 km as provided in Section 2.2.1. These two points, and , represent the nadir-looking satellite positions associated with the start and end of imaging, respectively. The unit vector of the average ( ) of these two satellite position vectors, , aligns with the satellite position vector at the centre time of imaging. The three satellite position vectors, , , and , all lie on a circle and in the same plane. The unit vector normal ( ) to this plane is computed as follows. (1) In order to lay out new points along the circle, we first compute the angle ( ) between and as follows (2) Based upon the imaging duration and the three second padding required at the beginning and ends of the imaging event, as discussed at the beginning of Section 3.3, a scale factor is computed and applied to obtain a new angle, . Then, the time history of points is computed as follows: (3) where = an arbitrary 3 x 1 satellite ephemeris vector along the circle = the orbital radius of the Hyperion satellite (705km) = an arbitrary angle in radians that runs from to in steps that correspond to 1 Hz based upon the image duration plus 3 second padding at start and end of imaging = the unit vector to the satellite at the image centre = the unit vector normal to the orbital plane

From NORAD:
The Two-Line Element (TLE) data provided by NORAD consists of a text file with multiple sets of two lines of data, each representing approximately eight hours. Each of the two lines contains some satellite identification information, the epoch year (last 2 digits) and epoch day (day of the year and fractional portion of the day), and then a series of orbital parameters that describe the satellite motion in an inertial system.
For a given image, the first step was to use the epoch year, day, and fraction of the day to select the two lines that corresponded to the imaging event of interest. The second step was to enter these two lines of data into an open-source MATLAB program to compute the time history of satellite ephemeris vectors in ECF at 1 Hz. The MATLAB code follows the Simplified General Perturbations-4 (SGP4) algorithm documented in (Vallado, Crawford, 2008).

CSATTB DES
The CSATTB DES consists of time-tagged attitude data via quaternions that rotate from sensor coordinate system to either the WGS 84 Earth-Centred Earth-Fixed (ECF) or the Earth-Centred Inertial (ECI) coordinate system, as specified by the data provider.
The algorithm to generate CSATTB data requires the following inputs: Latitude and Longitude of each of the four image corners provided in the metadata per Section 2.2.2; the approximate average terrain height over the ground footprint of the image; and CSEPHB ephemeris data generated using whichever of the two techniques described in Section 4.2 had been applied for the particular image of interest. The output of the CSATTB generation algorithm is a time history of attitude data provided as quaternions at a rate corresponding to the line rate of the imagery.
The processing steps in this subsection use a spherical Earth approximation, versus the more rigorous ellipsoidal Earth model, as provided by https://www.movabletype.co.uk/scripts/latlong.html. The former was chosen since it is closed-form, and the latter was deemed unnecessary due to the large GSD of Hyperion. The first step involves computing the distance and azimuth between points and referenced in Section 3.3.1. They are converted into ( , ) and ( , ) in radians, respectively, for use in the following equation. The distance, , in meters along a great circle between two points on the Earth's surface is computed as follows: ( 4 ) where ( , ) and ( , ) are the latitude and longitude of the two points in radians is the mean Earth radius, 6,371,000 m is an approximate mean terrain height over the ground footprint The azimuth angle, , in radians from the first point ( , ) to the second point ( , ) is computed as follows: (5) where The second step in reverse engineering the attitude data is to lay out intermediate points represented by the fraction, , along the great circle route, where the values =0 and =1 correspond to the points 1 and 2 referenced in Equations 4 and 5. Values of less than 0 and greater than 1 are required in order to include the padding of at least two attitude samples prior to the beginning and after the end of imaging, in order to allow 3 rd order LaGrange interpolation at any pixel in the image. The step size, or "delta ", is tuned to correspond intermediate points separated by one GSD in the along-track direction. Following is the pair of equations to compute intermediate points along the great circle.
where , with and defined in Equation 4 The third step to reverse engineer the attitude data is to compute the quaternions as a function of the scan direction and vector from the ephemeris vector to the point on the ground, for each of the intermediate points calculated via Equation 6.
Based upon the attitude time tag which corresponds to the line coordinate in the image, perform a 5 th order LaGrange interpolation to obtain the ephemeris satellite position vector, . Then, compute the unit vector, in ECF, of the desired ground footprint of the detector stick (aka, linear array) such that it is perpendicular to the scan direction defined by the great circle from to . Convert the intermediate ground point ( , , ) from Geodeteic to ECF to yield . Then, compute the unit vectors in ECF of the desired sensor coordinate system ( ) as follows.
, , Quaternions representing rotation from the sensor system to ECF are computed from each set of unit vectors computed via Equation 7 and assembled into a time history of attitude data.

CSSFAB DES
The CSSFAB DES consists of the following: • The lever arm vector in the sensor coordinate system, from the platform centre of mass to the imager perspective centre, typically obtained by calibration of the particular sensor. • Time-tagged focal length value(s). This value is typically a constant within an image for a linear array scanner.

•
The association between image sample coordinate (i.e., column) and (x,y) two-dimensional (2D) sensor locations in a virtual focal plane (fixed z value, one focal length distance away from the perspective centre), provided as a onedimensional (1D) grid laid out in the sample dimension, where each grid point is assigned (x,y) values. Note that the (x,y,z) coordinates are with respect to the sensor coordinate system. Keystone effects prevalent in many hyperspectral systems would be modelled using this grid data.
The lever arm vector is set to zeros since we don't have that calibration information and the overall ephemeris will be adjusted during bundle adjustment. The focal length, , is a single value computed using the pixel pitch, FOV, and number of detectors provided in Section 2.2.1, expressed in metres: where , the linear array length in metres, The association between image sample coordinate and sensor line-of-sight is conveyed by providing the (x, y) values of each endpoint of the linear array in the sensor coordinate system in metres. The total length of the array is 60 micrometres times 256 which equals 0.01536 metres; i.e., the value in Equation 8. Assuming that the principal point is at the centre of the linear array, each endpoint has a y coordinate with an absolute value equal to . The first endpoint of the array, which corresponds to sample coordinate 0, has (x, y) values of (0, -0.00768); the second endpoint of the array, which corresponds to sample coordinate 256, has (x, y) values of (0, +0.00768). From the focal length and pairs of (x, y) values, the sensor is modelled as a pinhole camera. If the sensor had known distortions, e.g. from camera calibration, its effects could have been modelled by dividing the linear array into any number of segments for which their endpoints would each be assigned their own pairs of (x, y) values and constrained such that the second endpoint of segment "i" coincides with the first endpoint of segment "i+1".

CSCSDB DES
The CSCSDB DES consists of the following: • Definition of content and coordinate system for correlated parameter groups (CPGs); e.g., one for ephemeris, one for attitude, and one for focal length; and may include imager calibration uncertainties and timing synchronization uncertainties.

•
Adjustable Parameter (AP) Uncertainties for each CPG expressed as a full error covariance matrix, including cross terms (correlations) • Potential splitting into "basic" (bias within image) and "posts" (variations within an image, or frame sequence) • Unmodeled error (UE) covariance and cross covariance values which describe high frequency random error, sometimes called "jitter", that occurs within an image and that cannot be removed via a registration process. These unmodeled errors are applicable to a given line/sample location within an image • Values of parameters of Strictly Positive Definite Correlation Functions (SPDCFs) that describe how the AP decorrelates as a function of time; i.e., between basic parameters between images, or between post parameters within an image.
The primary objective of the CSCSDB SDE is to identify the content of the vector of adjustable parameters for the image.
While the values of the vector of adjustable parameters are all zeros before any kind of adjustment has occurred, these parameters provide a convenient means to model both absolute and relative geolocation uncertainty as well as correlations of errors of the same adjustable parameter between different images and correlations of errors of different parameters within the same image. Section 3.6.1 provides an overview of the structure of an a priori error covariance matrix for one of the more complex parameterizations used in this study, while Sections 3.6.2 and 3.6.3 address the content of the two main parts of the full error covariance matrix, the fundamental adjustable parameters and the post adjustable parameters, respectively. Figure 5 illustrates the structure of the full multi-image a priori error covariance matrix for the vector of adjustable parameters associated with a block of two images for the "Baseline" case of Section 4.2; red dots indicate non-zero values. The symbols "A" and "C" indicate "inter-image" correlation of ephemeris errors and focal length error, respectively; however, attitude errors are assumed to be uncorrelated between different images as shown by the zero value at "B". The symbol "D" indicates "intra-image" correlation of attitude errors at different posts within the same image; however, as shown by symbol "E", attitude errors at posts are assumed to be uncorrelated between images.

Fundamental and Basic Adjustable Parameters:
The GLAS sensor model allows for the use of up to seven fundamental adjustable parameters which include three components for sensor position, three components for sensor attitude, and one component for focal length. GLAS also provides optional camera calibration and timing synchronization adjustable parameters, but neither of these are applicable to this study.
The first step is to divide the set of seven fundamental parameters into any number of correlated parameter groups (CPGs), ranging from one to seven. The concept of CPGs is applicable only for systems where an upstream process, such as a Kalman Filter, computes an a priori covariance matrix that is full; i.e., contains off-diagonal elements between fundamental parameters within the same image.
The second step is to assign a coordinate system to each component. For Hyperion, we used in-track, cross-track, and radial (ICR) for sensor position, and the sensor coordinate system for sensor attitude and focal length. Note that the coordinate system and methodology for expressing adjustable parameters differs in general from that of the metadata, e.g., for attitude we use Euler angles for the former and quaternions for the latter.
Each fundamental adjustable parameter can be split into two components: basic and posts. The basic component applies to the current image as a whole, while the component allocated to posts has a time-dependent impact on corrections applied throughout the image. The basic component of the fundamental adjustable parameters is addressed in this section while the posts component is addressed in Section 3.6.3.
Next, the one-sigma uncertainty values are assigned to each basic parameter, unless of course a full covariance matrix is available. Each component of sensor position was assigned one-sigma values of 500 metres. The two components of sensor attitude that correct pointing direction of the line-of-sight vector (x-rotation and y-rotation) were assigned one-sigma values of 0.057°. These two sets of uncertainty values are consistent with the approximate 700 metre geolocation errors from the images prior to any adjustment and are consistent with the procedure for estimating ephemeris using NORAD per Section 3.3.2. However, for the experiments that involved the near-nadir assumption per Section 3.3.1, these one-sigma values were increased to 200,000 metres and 17°, respectively. For the remaining uncertainty values discussed in this basic parameter subsection, no changes were made as a function of how the ephemeris data was generated. The third component of sensor attitude (z-rotation), which corresponds to a "clocking" effect, was assigned a one-sigma value of 0.9° which corresponds to the outer edge of the linear array being translated by two pixels due to a rotation about the line-of-sight. Finally, the focal length one-sigma uncertainty was set to 0.14 metres which is approximately 10% of the focal length value itself.
The final step in specifying error covariance information to the basic adjustable parameters relates to correlation between images. As shown in Figure 5, the sensor position parameters and focal length parameter were modelled as correlated between images. In each case, we used the dying exponential function which is one possible family of Strictly Positive-Definite Correlation Functions (SPDCFs) as discussed in (Dolloff et al., 2006). Time constants of 10 days were used for both sensor position and focal length; this corresponded to approximately 90% correlation between the closest pair of images in the study. Experiments were also run with both of these inter-image correlations set to zeros (uncorrelated).
Let the 3x3 covariance matrices of sensor position be represented as , , and for three images. Then, using the concept of an SPDCF, the full 9x9 error covariance matrix portion corresponding to only sensor position can be constructed as follows: (9) where is obtained by evaluating the SPDCF as a function of the absolute value of the time difference between images i and j. In the case where the SPCDF is a dying exponential, it will return a value in the range: (0, 1).
Note that if , then . This will always be the case in our study, and each will also be diagonal. Figure 5 showed an example where the only fundamental parameters that had some allocation to posts were the x-and y-rotations of sensor attitude; and the allocation involved 5 posts per image. The GLAS model levies no requirement for different images to have the same number of posts; however, posts are modelled as uncorrelated between images.

Post Adjustable Parameters:
This study addressed various numbers of posts but, in each case, they were assigned one-sigma values of 0.0057° in each component; this corresponds to 70 metres on the ground, or a little more than 2 pixels in the image. A time constant of 15 seconds was chosen for the dying exponential SPDCF; this corresponded to approximately 90% correlation between adjacent posts in the case with 11 posts which was the largest number of posts tested. A special case occurs when only two posts are used since this configuration conveniently models a rate error in the image; therefore, corrections are expected to be in opposite directions at opposite ends of the image and a priori correlation of -0.95 was assigned. The full intra-image error covariance matrix for posts is computed using Equation 9 such that each is a constant 2x2 diagonal covariance matrix and i runs from 1 to the number of posts.
Although not shown in Figure 5, the study also addressed allocation of the in-track and cross-track components of the sensor position fundamental adjustable parameters to two posts in addition to the basic component. This technique became particularly important when the near-nadir approximation was used to generate the ephemeris data. Since the intent of these posts was to model rate errors, using the same justification as provided in the previous paragraph, the a priori correlation value of -0.95 was assigned. In the near-nadir approximation case and in the NORAD case of ephemeris data generation, sensor position post one-sigma values of 20,000 metres and 250 metres, respectively, were used.

RESULTS
Results are divided into three sections with the first section summarizing the assessment methodology, the second section analysing the GLAS approach and variants of it using 14 images, and the third section comparing GLAS to RPC using two images.

Assessment Methodology
For each set of results, the process always involves running a standard bundle adjustment, as would be found in a photogrammetry textbook such as (Mikhail et al., 2001), followed by a check point analysis which uses the image coordinates of the check points and the values of the adjustable parameters solved in the bundle adjustment along with its full multi-image a posteriori error covariance (Dolloff, 2013) to perform multi-image geopositioning (MIG, aka Multi Ray Intersection) which solves for the coordinates of the check points. The outputs of the check point analysis include the following: • The x, y, and z components of MIG error computed on a point by point basis and optionally plotted on the same figure as the 90% 2D horizontal error ellipses and 90% vertical confidence intervals.

•
The Root Mean Square (RMS) of the MIG errors in the x, y, and z directions in units of metres (m).

•
The Signed Mean (SM) of the MIG errors in the x, y, and z directions in units of metres. The SM is also known as the bias.

•
The image reprojection error in units of pixels (p), abbreviated "im". Note that this error is computed by running the ground-to-image projection of the MIG-derived check point using the current sensor model "state" (GLAS SDEs and vector of adjustable parameters in case of the GLAS model, or polynomial coefficients for RPC) into each image on which the check point was measured. The line and sample image coordinate residuals are squared and summed over all measurements on all images, then divided by the total number of measurements, and finally the square root is taken. For the two-image bundle adjustment, a measured image point is counted as one measurement since residual occur only in the y-parallax direction; however, for a bundle adjustment consisting of more than two images, a measured image point is counted as two measurements. Image reprojection error is a metric that describes how well the set of images, upon which the ground point was measured, has been co-registered to one another mathematically via the current values of their adjustable parameters.

GLAS Approach
The GLAS approach is the most rigorous technique used in this study, especially compared to the RPC approach. Also, since GLAS had so many fewer adjustable parameters per image, 29 or less versus 40 or more for RPC, it is amenable to running larger block adjustments including even the images that have relatively few tie points measured on them. Therefore, more extensive analysis is performed on the GLAS approach before proceeding with a comparison.
From the total of 26 original control points measured on both the Hyperion images and the reference imagery, six have been withheld to use as check points. The main reason for this choice was to allow 20 control points to remain in order to allow a numerator-only RPC to be solved, as required to proceed with the analysis summarized in Section 4.3.

GLAS Compared to RPC
All results in this section refer to a two-image case using images 1 and 5 which have a convergence angle of 19°. While all results in Section 4.2 are with respect to the GLAS model, this Section 4.3 compares GLAS to RPC. For the purposes of this paper, we chose the specific form of RPC that yielded the best results which involved: 1) defining the ground coordinate system to be a Cartesian Local Rectangular system such that the z direction was aligned with the line-of-sight direction, x direction aligned with the scan direction, and y direction completed a right-handed system; and 2) limiting parameters to only the numerator and allowing up to a combined power of 3 of the ground coordinates. Thus, RPC used in this study was a special case that was numerator-only and consisted of 40 parameters. So, we did not address how results varied as a function of different RPC parameterizations. We do not advocate use of the RPC as a sensor modelling technique in and of itself; i.e., it should not be used as a sensor model that initializes itself solely as a function of image and ground point correspondences that surely do not span the 3D volume within which an exploitation tool could attempt object reconstruction.

Summary
Reverse engineering the GLAS metadata for Hyperion successfully enabled 3D geopositioning with rigorous error propagation from overlapping imagery whether or not the NORAD ephemeris data was used in the solution and whether or not higher order adjustable parameters were included in the sensor model. Check point analysis demonstrated that, compared to RPC, GLAS had approximately an order of magnitude and 5X improvement for the horizontal and vertical components, respectively, of geolocation.

Future Work
We intend to investigate the use of correlators to automatically measure the image coordinates of a dense set of tie points to use in the bundle adjustment solution, thereby allowing the investigation into the use of more correction posts in the GLAS model. We plan to apply the techniques in this paper to airborne HSI data and higher resolution data that may justify the need for correction posts. Finally, we would like to attempt generation of point clouds or dense DEMs from overlapping HSI data that has been adjusted using the GLAS model.