Block Adjustment of High-Resolution Satellite Images Described by Rational Polynomials Jacek Grodecki and Gene Dial Abstract This paper describes how to block adjust high-resolution satellite imagery described by Rational Polynomial Coefficient (RPC) camera models and illustrates the method with an Ikonos example. By incorporating a priori constraints into the adjustment model, multiple independent images can be adjusted with or without ground control. The RPC block adjustment model presented in this paper is directly related to geometric properties of the physical camera model. Multiple physical camera model parameters having the same net effect on the object-image relationship are replaced by a single adjustment parameter. Consequently, the proposed method is numerically more stable than the traditional adjustment of exterior and interior orientation parameters. This method is generally applicable to any photogrammetric camera with a narrow field of view, calibrated, stable interior orientation, and accurate a priori exterior orientation data. As demonstrated in the paper, for Ikonos satellite imagery, the RPC block adjustment achieves the same accuracy as the ground station block adjustment with the full physical camera model. Background The launch of Ikonos on 24 September 1999 set off a new era of commercially available, high-resolution satellite imagery. Overviews of the Ikonos satellite may be found in Dial (2001), Dial et al. (2001), and Grodecki and Dial (2001). Rational Polynomial Coefficient (RPC) camera models are derived from the physical Ikonos sensor model to describe the object-image geometry. RPC models transform three-dimensional object-space coordinates into two-dimensional imagespace coordinates. RPCs provide a simple and accurate means of communicating camera object-image relationship from image data provider to image data user (Grodecki, 2001). RPCs have been successfully used for the terrain extraction, orthorectification, and feature extraction tasks. What has been lacking is a method to block adjust imagery described by RPCs. Dial and Grodecki (2002) outlined the RPC block adjustment technique, described in more detail in this article. A similar method of exterior orientation bias compensation for Ikonos imagery has been independently proposed by Fraser et al. (2002), albeit without any reference to the physical camera model. Other investigators have proposed various methods for photogrammetric processing of Ikonos images (Toutin and Cheng, 2000). These have been hampered by incomplete knowledge of the Ikonos camera model, of the maneuvering possible during image acquisition, and by limited availability of generally expensive test data sets. While Ikonos ground stations use the physical camera model for block adjustment, some users wish to block adjust Ikonos imagery outside of the ground station with their own, proprietary ground control, elevation models, or controlled Space Imaging LLC, 12076 Grant Street, Thornton, CO 80241 (jgrodecki@spaceimaging.com; gdial@spaceimaging.com). PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING imagery. As demonstrated below, the RPC block adjustment model provides a rigorous, accurate method to block adjust Ikonos data outside of the ground stations. This publication of a technique for block adjusting Ikonos images described by RPC data is motivated by a desire to satisfy the needs of those users who would like to perform their own block adjustment, and to ensure that Ikonos images are processed in such way as to consistently achieve the highest possible accuracy. In developing the adjustment model described here, the authors had access to the complete description of Ikonos imaging geometry, familiarity with all of the satellite maneuvering modes, the resources of extensive test ranges and imagery with which to test and validate, and the experience gained calibrating, testing, and troubleshooting Ikonos metric projects. Physical Camera Models Owing to the dynamic nature of satellite image collection, photogrammetric processing of satellite imagery is more complicated than is aerial frame camera processing. Aerial cameras acquire the entire image at an instant of time with a unique exposure station and orientation. High-resolution pushbroom satellite cameras, including Ikonos, use linear sensor arrays that acquire a single image line at an instant of time. Consequently, each line of a pushbroom satellite image has a different exposure station and orientation (Grodecki, 2001). Implementing such a complicated model is expensive, time consuming, and error prone. Adjustment Parameters Interior Orientation Interior orientation includes parameters for detector positions, principal point, optical distortion, and focal length. Unlike film cameras, the Ikonos digital focal plane does not require fiducial marks. Instead, every pixel is at a fixed, calibrated position on the solid-state focal plane. The detectors are rigidly attached to the focal plane in a stable thermal-mechanical environment. The elements of interior orientation have been determined to superb accuracy with well-controlled test-range imagery. Consequently, it is not necessary, indeed it is not desirable, to estimate corrections to the interior orientation parameters in the block adjustment process. Exterior Orientation Exterior orientation comprises position and attitude. On-board GPS receivers determine the satellite ephemeris, i.e., camera Photogrammetric Engineering & Remote Sensing Vol. 69, No. 1, January 2003, pp. 59 – 68. 0099-1112/03/6901–059$3.00/0 䉷 2003 American Society for Photogrammetry and Remote Sensing Ja nuar y 20 03 59 position as a function of time. Star trackers and gyros determine the camera attitude as a function of time. For Ikonos, the ephemeris and attitude have finite accuracy, about one meter for the ephemeris and about one or two arc-seconds for attitude. As demonstrated below, for high-resolution satellite systems the in-track and cross-track position errors are almost completely correlated with pitch and roll attitude errors so that they cannot be separately estimated. Moreover, yaw and radial errors are negligible. Thus, it is only necessary to estimate roll and pitch. Attitude Errors Attitude angles are roll (rotation about the in-track direction), pitch (rotation about the cross-track direction), and yaw (rotation about the line-of-sight). For Ikonos, with its 680-km orbital height, a 2-arc-second error in roll or pitch causes a 6.6-m or more displacement on the ground, because its effect is proportional to the slant range. The yaw error effect on the ground position is, on the other hand, a function of the swath width. For a yaw error of 2 arc-seconds and a swath width of 11 km, the maximum ground displacement is only 0.055 meters, a negligible amount. Ephemeris Errors Ephemeris errors are conventionally decomposed into in-track, cross-track, and radial components. We will first show that intrack and cross-track errors are equivalent to pitch and roll attitude errors. Then we will show that radial errors are negligible. For narrow field-of-view cameras, small horizontal displacements are equivalent to small angular rotations. As a result, roll errors are completely correlated with cross-track errors. The same is the case for pitch and in-track errors. As shown in Figure 1, for a roll error of 2 arc-seconds, the difference between the nominal nadir-pointing camera and another camera that has been rotated and correspondingly displaced is X1 ⫺ X1⬘ ⫽ X2 ⫺ X2⬘ ⫽ 0.000454 m:—less than 1/2000 pixel. If the camera field of view is narrow enough and the position and attitude errors are small enough such that the non-linear effects of attitude errors are negligible, then position and attitude cannot be independently observed. The presence of correlated parameters having near-identical effects leads to instability of the block adjustment process. Combining the correlated parameters into a single parameter results in numerical stability. The equivalence of small pitch and in-track ephemeris errors is illustrated in Figure 2. Two satellite imaging systems are shown, one at position A with pitch error P and the other at position B with in-track ephemeris error IT. The motions of the satellites and the aim points of their scans are illustrated by arrows. Satellite A has a slightly longer slant range, but this is insignificant for a few arc-seconds of pitch error. Satellite A also has a slightly different perspective than B, but this is again insignificant for a few arc-seconds of pitch. Small pitch errors are thus indistinguishable from in-track ephemeris errors, and those two physical effects are thus best modeled by a single parameter. Radial ephemeris errors result in scale errors. For example, a 1-m radial error from a 680-km orbit height causes a 1.5-ppm scale factor error that causes a 16-mm positioning error across the approximately 11-km swath width. Radial error effects are thus negligible for Ikonos. Drift Errors While attitude and ephemeris errors are largely biases, there exists the possibility that these errors would drift as a function of time. For example, gyro errors without sufficient compensation from the star trackers could introduce an error in attitude rate. For Ikonos, these errors have been found to be small, less 60 Ja nuar y 20 03 Figure 1. Effect of roll and cross-track errors. a ⫽ half-angle of the camera field of view; for Ikonos, a ⫽ 28.53⬘. h ⫽ orbital height; for Ikonos, h ⫽ 680 km. r ⫽ camera roll angle ⫽ 2 arc-seconds. d ⫽ equivalent displacement ⫽ h tan(r) ⫽ 6.593466 m. X1 ⫽ ground coordinate of the left edge of the nominal camera. ⫽ ⫺h tan(a) ⫽ ⫺5644.129609 m. X1⬘ ⫽ ground coordinate of the left edge of the displaced and rotated camera. ⫽ d ⫺ h tan(a ⫹ r) ⫽ ⫺5644.130063 m. X2 ⫽ ground coordinate of the right edge of the nominal camera. ⫽ h tan(a) ⫽ 5644.129609 m. X2⬘ ⫽ ground coordinate of the right edge of the displaced and rotated camera. ⫽ d ⫹ h tan(a ⫺ r) ⫽ 5644.129155 m. X1 ⫺ X1⬘ ⫽ X2 ⫺ X2⬘ ⫽ 0.000454 m. than a few pixels per 100 km, and so are negligible for all but very long strips. Required Adjustments As demonstrated above, many effects are negligible or completely correlated with other effects. As a result, only a few parameters are required to effectively model the sensor errors. A line offset parameter is required to adjust for errors in the line direction and a sample offset parameter is required to adjust for errors in the sample direction. The line parameter absorbs effects of orbit, attitude, and residual interior orientation errors in the line direction. The sample parameter absorbs the same effects in the sample direction. For longer strips, a parameter proportional to line can be added to model drift errors. Rational Polynomial Camera Model The Ikonos physical camera model is used at the ground stations to block adjust multiple images. RPCs are subsequently estimated from the block adjusted physical camera model. The 78 rational polynomial coefficients, {c1 . . . c20, d2 . . . d20, e1 . . . PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING where NumL(P, L, H ) ⫽ c1 ⫹ c2L ⫹ c3P ⫹ c4H ⫹ c5LP ⫹ c6LH ⫹ c7PH ⫹ c8L2 ⫹ c9P 2 ⫹ c10H 2 ⫹ c11PLH ⫹ c12L3 ⫹ c13LP 2 ⫹ c14LH 2 ⫹ c15L2P ⫹ c16P 3 ⫹ c17PH 2 (6) ⫹ c18L2H ⫹ c19P 2H ⫹ c20H 3 ⫽ cTu DenL(P, L, H ) ⫽ 1 ⫹ d2L ⫹ d3P ⫹ d4H ⫹ d5LP ⫹ d6LH ⫹ d7PH ⫹ d8L2 ⫹ d9P 2 ⫹ d10H 2 ⫹ d11PLH ⫹ d12L3 ⫹ d13LP 2 ⫹ d14LH 2 ⫹ d15L2P ⫹ d16P 3 ⫹ d17PH 2 (7) ⫹ d18L H ⫹ d19P H ⫹ d20H ⫽ d u 2 2 3 T with u ⫽ [1 L P H LP LH PH L2 P 2 H 2 PLH L3 LP 2 LH 2 L2P P 3 PH 2 L2H P 2H H 3]T c ⫽ [c1 c2 … c20]T Figure 2. Side view of satellite imaging system A with pitch error P and satellite imaging system B with in-track ephemeris error IT. d ⫽ [1 d2 … d20]T; and e20, f2 . . . f20}, are subsequently determined by fitting the physical camera model, as described in the next section, and are supplied with ortho-kit and stereo images. Given these coefficients, the computation of (Line, Sample) is fast, easy, and accurate. The RPC model has previously been described in Grodecki (2001) but will also be briefly summarized here. The RPC model relates the object-space (, , h) coordinates to image-space (Line, Sample) coordinates. The RPC functional model is in the form of a ratio of two cubic polynomials of object-space coordinates. Separate rational functions are used to express the object-space to line and the object-space to sample coordinates relationship. To improve numerical precision, image- and object-space coordinates are normalized to 具⫺1, ⫹1典 range as shown below. Given the object-space coordinates (, , h), where is geodetic latitude, is geodetic longitude, and h is height above the ellipsoid, and the latitude, longitude, and height offsets and scale factors (LAT OFF, LONG OFF, HEIGHT OFF, LAT SCALE, LONG SCALE, HEIGHT SCALE ), the calculation of image-space coordinates begins by normalizing latitude, longitude, and height as follows: P⫽ L⫽ ⫺ LAT OFF LAT SCALE ⫺ LONG OFF H⫽ LONG SCALE , (1) , and HEIGHT SCALE . (2) (3) The normalized line and sample image-space coordinates (Y and X, respectively) are then calculated from their respective rational polynomial functions g(.) and h(.): i.e., NumL(P, L, H ) cTu ⫽ T DenL(P, L, H ) d u PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING NumS(P, L, H ) eTu ⫽ T DenS(P, L, H ) f u (8) where NumS(P, L, H ) ⫽ e1 ⫹ e2L ⫹ e3P ⫹ e4H ⫹ e5LP ⫹ e6LH ⫹ e7PH ⫹ e8L2 ⫹ e9P 2 ⫹ e10H 2 ⫹ e11PLH ⫹ e12L3 ⫹ e13LP 2 ⫹ e14LH 2 ⫹ e15L2P ⫹ e16P 3 ⫹ e17PH 2 (9) ⫹ e18L H ⫹ e19P H ⫹ e20H ⫽ e u 2 2 3 T DenS(P, L, H ) ⫽ 1 ⫹ f2L ⫹ f3P ⫹ f4H ⫹ f5LP ⫹ f6LH ⫹ f7PH ⫹ f8L2 ⫹ f9P 2 ⫹ f10H 2 ⫹ f11PLH ⫹ f12L3 ⫹ f13LP 2 ⫹ f14LH 2 ⫹ f15L2P ⫹ f16P 3 ⫹ f17PH 2 (10) ⫹ f18L H ⫹ f19P H ⫹ f20H ⫽ f u 2 2 3 T with e ⫽ [e1 e2 … e20]T f ⫽ [1 f2 … f20]T h ⫺ HEIGHT OFF Y ⫽ g(, , h) ⫽ X ⫽ h(, , h) ⫽ (4) Using line and sample offsets and scale factors (LINE OFF, SAMP OFF, LINE SCALE, SAMP SCALE ), the de-normalized image-space coordinates (Line, Sample), where Line is the image line number expressed in pixels with pixel zero as the center of the first line, and Sample is the sample number expressed in pixels with pixel zero is the center of the left-most sample, are finally computed as Line ⫽ Y ⭈ LINE SCALE ⫹ LINE OFF, and (11) Sample ⫽ X ⭈ SAMP SCALE ⫹ SAMP OFF. (12) Determining RPC Coefficients A least-squares approach is used to estimate the RPC model coefficients ci , di , ei , and fi from a three-dimensional grid of Ja nuar y 20 03 61 points, depicted schematically in Figure 3, generated using the physical camera model. It should be noted that, as pointed out in Hu and Tao (2001) and Tao and Hu (2001), attempts to use ground control only to determine RPC coefficients risks numerical instability during the fitting process and poor compliance with camera physics. Evaluation of RPC Accuracy Accuracy of the RPC model was assessed using the physical Ikonos camera model as a reference. RPCs were fitted to a grid of points with ground-space coordinates generated from the image-space coordinates, for a set of different elevation levels, using the Ikonos physical camera model (see Grodecki (2001) and Grodecki and Dial (2001)). Independent check points were subsequently used to quantify the RPC model accuracy. RPC accuracy was computed for a strip length of 100 km, for a series of imaging scenarios. The imaging parameters ranged from 0⬚ to 30⬚ for roll, 0⬚ to 30⬚ for pitch, 0⬚ to 360⬚ for scan azimuth, and 0⬚ to 60⬚ for latitude. The check-point residual errors were 0.01 pixels RMS and 0.04 pixels worst case for all imaging scenarios, thus demonstrating the extremely high accuracy of the RPC camera model representation (Grodecki, 2001). Block Adjustment with RPCs RPC data provided with Ikonos imagery has, up to now, enabled the user to perform feature extraction, DEM generation, and orthorectification. Until now, however, photogrammetric block adjustment with RPCs has been considered to be unfeasible. As demonstrated below, the approach presented in this paper provides a rigorous, consistent, and accurate block adjustment method for high-resolution satellite imagery described by RPCs. The proposed RPC block adjustment model is directly related to the geometric properties of the physical camera model, by combining multiple physical camera model parameters into a single adjustment parameter having the same net effect on the object-image relationship. Consequently, the proposed method is numerically more stable than the traditional adjustment of exterior and interior orientation parameters. This method is generally applicable to any photogrammetric camera with a narrow field of view, a calibrated stable interior orientation, and accurate a priori exterior orientation data. RPC Block Adjustment Math Models Proposed RPC Block Adjustment Model The RPC block adjustment math model proposed in this paper is defined in the image space. It uses denormalized RPC models, p and r, to express the object-space to image-space relationship, and the adjustable functions, ⌬p and ⌬r, which are added to the rational functions to capture the discrepancies between the nominal and the measured image-space coordinates. For each image point i on image j, the RPC block adjustment math model is thus defined as follows: Line i(j) ⫽ ⌬p(j) ⫹ p(j)(k, k, hk) ⫹ Li (13) Sample i(j) ⫽ ⌬r (j) ⫹ r (j)(k, k, hk) ⫹ Si (14) where Linei(j) and Samplei(j) are measured (on image j ) line and sample coordinates of the ith image point, corresponding to the kth ground control or tie point with object space coordinates (k ,k ,hk); ⌬p(j) and ⌬r (j) are the adjustable functions expressing the differences between the measured and the nominal line and sample coordinates of ground control and/or tie points, for image j; Li and Si are random unobservable errors; p(j) and r (j) are the given line and sample, denormalized RPC models for image j; p(, , h) ⫽ g(, , h) ⭈ LINE SCALE (15) ⫹ LINE OFF; and r(, , h) ⫽ h(, , h) ⭈ SAMPLE SCALE (16) ⫹ SAMPLE OFF. We are proposing to use a polynomial model defined in the domain of image coordinates to represent the adjustable functions, ⌬p and ⌬r, which in general can be expressed as ⌬p ⫽ a0 ⫹ aS ⭈ Sample ⫹ aL ⭈ Line ⫹ aSL ⭈ Sample ⭈ Line ⫹ aL2 ⭈ Line 2 ⫹ aS2 ⭈ Sample 2 ⫹ … (17) ⌬r ⫽ b0 ⫹ bS ⭈ Sample ⫹ bL ⭈ Line ⫹ bSL ⭈ Sample ⭈ Line ⫹ bL2 ⭈ Line 2 ⫹ bS2 ⭈ Sample 2 ⫹ … (18) where a0, aS , aL , . . ., and b0, bS , bL , . . ., are the adjustment parameters for an image, and Line and Sample are line and sample coordinates of a ground control or tie point. The choice of the image coordinate system to define the adjustable functions is influenced by the need to tie the adjustable model to the physics of the imaging operation. For Ikonos we propose to use the following truncated polynomial model defined in the domain of image coordinates to represent the adjustable functions, ⌬p and ⌬r: Figure 3. RPC fitting. 62 Ja nuar y 20 03 ⌬p ⫽ a0 ⫹ aS ⭈ Sample ⫹ aL ⭈ Line (19) ⌬r ⫽ b0 ⫹ bS ⭈ Sample ⫹ bL ⭈ Line (20) As demonstrated in the section on Adjustment Parameters, each of the parameters in the above adjustment model (Equations 19 and 20) has physical significance. As a result, the proposed RPC block adjustment model does not present the numerical ill-conditioning problems of classical techniques. PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING Parameter a0 absorbs all in-track errors causing offsets in the line direction, including in-track ephemeris error, satellite pitch attitude error, and the line component of principal point and detector position errors. As discussed earlier, for narrow field-of-view instruments with strong a priori orientation data, all of these physical parameters have the same net effect of displacing images in line. Similarly, parameter b0 absorbs crosstrack errors causing offsets in the sample direction, including cross-track ephemeris error, satellite roll attitude error, and the sample component of principal point and detector position errors. Because the line direction is equivalent to time, parameters aL and bL absorb the small effects due to gyro drift during the imaging scan. As will be shown later, parameters aL and bL turn out to be required only for images that are longer than 50 km. Parameters aS and bS absorb radial ephemeris error, and interior orientation errors such as focal length and lens distortion errors. As discussed earlier, for Ikonos these errors are negligibly small. As a result, parameters aS and bS are not required. For images shorter than 50 km, the adjustment model becomes simply ⌬p ⫽ a0 and ⌬r ⫽ b0 where a0 and b0 are bias parameters to be determined for each image by the block adjustment process. Other RPC Block Adjustment Models Alternatively, adjustable functions ⌬p and ⌬r can also be represented by a polynomial model defined in the domain of object coordinates as ⌬p ⫽ a0 ⫹ aP ⭈ ⫹ aL ⭈ ⫹ aH ⭈ h ⫹ aP2 ⭈ 2 ⫹ aL2 ⭈ 2 (21) Figure 4. Evaluation of RPC adjustment models. ⫹ aH2 ⭈ h ⫹ aPL ⭈ ⭈ ⫹ aPH ⭈ ⭈ h ⫹ aLH ⭈ ⭈ h ⫹ … 2 ⌬r ⫽ b0 ⫹ bP ⭈ ⫹ bL ⭈ ⫹ bH ⭈ h ⫹ bP2 ⭈ 2 ⫹ bL2 ⫹ 2 (22) ⫹ bH2 ⭈ h ⫹ bPL ⭈ ⭈ ⫹ bPH ⭈ ⭈ h ⫹ bLH ⭈ ⭈ h ⫹ … 2 As shown later, adjustment models defined in the domain of object coordinates are in general less accurate than models defined in the domain of image-space coordinates. Another possibility is to define the RPC block adjustment model in the object space. The object-space RPC block adjustment math model, for the kth ground control or tie point being the ith image point on the jth image, is then defined as follows: Linei(j) ⫽ p(j)(k ⫹ ⌬ (j), k ⫹ ⌬ (j), hk ⫹ ⌬h(j)) ⫹ Li (23) Samplei(j) ⫽ r (j)(k ⫹ ⌬ (j), k ⫹ ⌬ (j), hk ⫹ ⌬h(j)) ⫹ Si (24) where ⌬ (j), ⌬ (j), and ⌬h(j) are the adjustable functions expressing the differences between the measured and the nominal object-space coordinates of a ground control or tie point, for image j. As before, the object-space adjustment model can be represented either by a polynomial model defined in the domain of image space or by a polynomial model defined in the domain of object coordinates. We do not recommend the object-space RPC block adjustment math model, because it is nonlinear in the adjustment parameters and unrelated to imaging geometry. Evaluation of RPC Adjustment Models The accuracy of the proposed RPC adjustment models was evaluated by numerical simulation, using the perturbation approach shown in Figure 4. Errors in satellite vehicle ephemeris and attitude were propagated, for a grid of image points, down to the object (, , h) space. The so determined perturbed ground coordinates were then projected back to the image (Line, Sample) space. In both cases the Ikonos physical camera PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING model was utilized. The differences (⌬L, ⌬S) between the original and the perturbed image coordinates were subsequently calculated, and used as input to the tested adjustment models. Evaluation of Image-Space Adjustment Models Defined in the Domain of Image Coordinates The following combinations of the proposed adjustment models were evaluated: (1) (2) (3) (4) ⌬p ⫽ a0 and ⌬r ⫽ b0 ⌬p ⫽ a0 ⫹ aL ⭈ Line and ⌬r ⫽ b0 ⫹ bL ⭈ Line ⌬p ⫽ a0 ⫹ aS ⭈ Sample and ⌬r ⫽ b0 ⫹ bS ⭈ Sample ⌬p ⫽ a0 ⫹ aS ⭈ Sample ⫹ aL ⭈ Line and ⌬r ⫽ b0 ⫹ bS ⭈ Sample ⫹ bL ⭈ Line where a0, b0, aL , bL , aS , bS are the image adjustment parameters, and Line, Sample are the line and sample coordinates of a ground control or a tie point. For each of the tested RPC adjustment models, the adjustable parameters (a0, b0, aL , bL , aS , bS) were estimated using the least-squares approach. The post-fit RMS errors and the maximum residual errors were then computed for each of the tested adjustment models. A number of scenarios were generated to thoroughly test the proposed adjustment models using a wide range of feasible imaging conditions. The imaging parameters ranged from 0⬚ to 30⬚ for roll, 0⬚ to 30⬚ for pitch, 0⬚ to 360⬚ for scan azimuth, and 0⬚ to 60⬚ for latitude. The image strip length was varied from 10 km to 100 km. The minimum elevation angle was set to 50 degrees. The errors in the satellite vehicle ephemeris and attitude were set to ● 3 meters in the ephemeris components (in-track, cross-track, radial), and ● 2 arc-seconds in the attitude angles (pitch, roll, yaw). Ja nuar y 20 03 63 Maximum residual and RMS errors, from all imaging scenarios, were then computed giving the measure of the worst possible math model errors when using the proposed RPC block adjustment approach. The results of the analysis are shown in Table 1. The results given in Table 1 show that the postulated RPC adjustment models can accurately model the effects of ephemeris and attitude errors. Bias only models (parameters ⌬p ⫽ a0 and ⌬r ⫽ b0 only) are effective for strip lengths up to 50 km. Strips of 100 km length may require the addition of drift parameters (aL and bL) for full accuracy. Parameters proportional to sample (aS and bS) and higher order terms are not normally required. Evaluation of Image-Space Adjustment Models Defined in the Domain of Object-Space Coordinates The following adjustment models were tested: TABLE 2. EVALUATION OF ADJUSTMENT MODELS DEFINED IN THE DOMAIN OF OBJECT COORDINATES Strip Length Adjustment Model RMS Sample Error [pixels] 10 km (a) (b) (c) (a) (b) (c) (a) (b) (c) (a) (b) (c) 0.15 0.09 0.002 0.27 0.11 0.01 0.52 0.25 0.02 1.07 0.76 0.75 20 km 50 km 100 km Max. Sample Error [pixels] RMS Line Error [pixels] Max. Line Error [pixels] 0.09 0.06 0.001 0.17 0.06 0.002 0.27 0.11 0.01 0.56 0.40 0.29 0.12 0.16 0.002 0.20 0.23 0.01 0.42 0.61 0.04 0.84 1.48 0.53 0.08 0.07 0.001 0.09 0.11 0.003 0.18 0.29 0.02 0.36 0.66 0.21 (a) ⌬p ⫽ a0 ⫹ aP ⭈ and ⌬r ⫽ b0 ⫹ bP ⭈ (b) ⌬p ⫽ a0 ⫹ aL ⭈ and ⌬r ⫽ b0 ⫹ bL ⭈ (c) ⌬p ⫽ a0 ⫹ aL ⭈ ⫹ aP ⭈ and ⌬r ⫽ b0 ⫹ bL ⭈ ⫹ bP ⭈ where a0, b0, aL , bL , aP , bP are the image adjustment parameters; and , are the object space coordinates of a ground control (or tie) point. As before, a number of scenarios were generated for this purpose — using the same ranges of scanning azimuth, roll and pitch angles, and geographic location. Maximum residual and RMS errors, from all imaging scenarios, are shown in Table 2. It is seen that, for strips up to 20 km long, the image-space adjustment models defined in object-space coordinates give virtually the same results as the image-space adjustment models defined in image space coordinates. However, as seen in the previous section, for longer strips adjustment models defined in image space produce superior accuracy. Moreover, as indicated earlier, the image-space adjustment models defined in image-space coordinates are also much more closely related to the geometric properties of the physical camera model. As a result, the proposed RPC block adjustment will utilize the image-space coordinate formulation. RPC Block Adjustment Algorithm Multiple overlapping images can be block adjusted using one of the RPC adjustment models given above. As indicated above, the preferred approach uses the image-space adjustment model given by Equations 19 and 20. The overlapping images, with TABLE 1. EVALUATION OF ADJUSTMENT MODELS DEFINED IN THE DOMAIN OF IMAGE COORDINATES Strip Length Adjustment Model Max. Sample Error [pixels] 10 km (1) (2) (3) (4) (1) (2) (3) (4) (1) (2) (3) (4) (1) (2) (3) (4) 0.21 0.15 0.09 0.004 0.28 0.15 0.19 0.01 0.57 0.16 0.50 0.02 1.00 0.17 0.93 0.07 20 km 50 km 100 km 64 Ja nuar y 20 03 RMS Sample Error [pixels] Max. Line Error [pixels] RMS Line Error [pixels] 0.10 0.10 0.06 0.001 0.13 0.10 0.12 0.002 0.29 0.10 0.28 0.01 0.51 0.10 0.50 0.03 0.21 0.12 0.10 0.001 0.32 0.12 0.22 0.004 0.66 0.13 0.58 0.02 1.25 0.17 1.17 0.06 0.09 0.08 0.07 0.001 0.15 0.08 0.13 0.001 0.34 0.08 0.33 0.01 0.66 0.08 0.65 0.03 RPC models expressing the object-space to image-space rela- tionship for each image, are tied together by tie points whose image coordinates are measured on those images. Optionally, the block may also have ground control points with known or approximately known object-space coordinates and measured image positions (see Figure 5). Indexing of observation equations is based on image-point indices i. Because there is only one observation equation per image point, index i uniquely identifies each observation equation. Thus, for the kth ground control or tie point being the ith image point on the jth image, the RPC block adjustment observation equations read (j) FLi ⫽ ⫺Line i ⫹ ⌬p(j) ⫹ p(j)(k, k, hk) ⫹ Li ⫽ 0 (j) (25) FSi ⫽ ⫺Sample i ⫹ ⌬r (j) ⫹ r (j)(k, k, hk) ⫹ Si ⫽ 0 (26) ⌬p(j) ⫽ a0(j) ⫹ aS(j) ⭈ Sample i(j) ⫹ aL(j) ⭈ Line i(j) (27) ⌬r (j) ⫽ b0(j) ⫹ bS(j) ⭈ Sample i(j) ⫹ bL(j) ⭈ Line i(j) (28) with Observation Equations 25 and 26 are formed for each image point i. Measured image-space coordinates for each image point i (Line i(j) and Sample i(j)) constitute the adjustment model observables, while the image model parameters (a0(j), aS(j), aL(j), b0(j), bS(j), bL(j)) and the object-space coordinates (k , k , hk) comprise the unknown adjustment model parameters. Line i(j) and Sample i(j) coordinates in Equations 27 and 28 are the approximate fixed values for the true image coordinates. One possible Figure 5. Block adjustment of multiple overlapping images. PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING choice for the approximate line and sample coordinates in Equations 27 and 28 are the values of the measured image coordinates. It should be noted that, even though the true image coordinates are not known, the effect of using the approximate values in Equations 27 and 28 will be for all practical purposes negligible because the measurements of image coordinates are performed with sub-pixel accuracy. With Fi ⫽ 冋 册 FLi , FSi x0 is the vector of the approximate model parameters, x0 ⫽ AGi dxG ⫽ application of the Taylor Series expansion to the RPC block adjustment observation Equations 25 and 26 results in the following linearized model: ⫽ (30) where Fi0 ⫽ 冋 册 ⫺Linei(j) ⫹ a0(j) ⫹ aS(j) ⭈ Sample i(j) 0 0 冤 冥 冤 0 ⭸FSi ⭸xTG x dxG (37) 0 冟 冟 冟 冟 冟 冟 0…0 ⭸FLi ⭸ k x 0 ⭸FLi ⭸ k x 0 ⭸FLi ⭸hk x 0…0 ⭸FSi ⭸ kx 0 ⭸FSi ⭸ kx 0 ⭸FSi ⭸hk x bL(j) 0 ⭈ 0 Line i(j) 冟 冟 0 ⫹ r (k0, k0, hk0) (j) 冥 0 0…0 0 冥冤 冥 冤 冥 冟 冟 冤 冟 冟 冥冋 ⭸FLi ⭸xT x 冋 册 ⭸FLi ⭸xTA x 0 ⭸FSi ⭸xTA x 0 ⭸FLi ⭸ k ⭸FLi ⭸ k ⭸FLi ⭸p(j) ⫽ ⭸hk ⭸ k 册 冋 ⭸p(j) ⭸k ⭸p(j) ⭸hk (38) ⭸FSi ⭸ k ⭸FSi ⭸ k ⭸FSi ⭸r (j) ⫽ ⭸hk ⭸ k 册 冋 ⭸r (j) ⭸ k ⭸r (j) , ⭸hk 册 (39) 册 冋 with dFLi 0 dFi ⫽ ⫽ dx dFSi ⭸FSi ⭸xT x (32) 冋 ⭸p ⭸ 0 ⭸FLi ⭸xTG x 册 ⭈ 冋 册 dxA dxA ⫽ [AAi AGi] dxG dxG 0 ⭸FSi ⭸xTG x 0 冋 册 ⭸p ⭸ 冋 ⭸p cT(dTu) ⫺ dT(cTu) ⭸u ⫽ ⭈ ⭸h (dTu)2 ⭸P ⭸u ⭸L ⭸u ⭸H 册 1 LAT SCALE 0 0 0 1 LONG SCALE 0 0 0 1 HEIGHT SCALE ⭈ LINE SCALE dx ⫽ x ⫺ x0 is the vector of unknown corrections to the approximate model parameters, x0, dx ⫽ 冋 册 dxA dxG da(1) da(1) db(1) db(1) db(1) dxA ⫽ [da(1) 0 S L 0 S L da0(n) daS(n) daL(n) db0(n) ⭸r ⭸ ⭈ dbS(n) (34) dxG ⫽ [d1 d1 dh1 … dm⫹p dm⫹p dhm⫹p]T 冋 册 ⭸r ⭸ 冋 ⭸r ⭸u eT(f Tu) ⫺ f T(eTu) ⫽ ⭈ ⭸h (f Tu)2 ⭸P ⭸u ⭸L ⭸u ⭸H 册 册 1 LAT SCALE 0 0 0 1 LONG SCALE 0 0 0 1 HEIGHT SCALE ⭈ SAMPLE SCALE dbL(n)]T dxG is the sub-vector of the corrections to the approximate object space coordinates for m ground control and p tie points, PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING 冋 (33) dxA is the sub-vector of the corrections to the approximate image adjustment parameters for n images, … ⯗ d k d k dhk ⯗ 0…0 and ⫹ aL(j) ⭈ Line i(j) ⫹ p(j)(k0, k0, hk0) 0 ⫽ ⫽ ⫺wPi ⫺Samplei(j) ⫹ b0(j) ⫹ bS(j) ⭈ Sample i(j) ⫽ 冟 冟 ⭸FLi ⭸xTG x 冋 (31) FSi0 ⫹ (36) x G0 where FLi0 冤 xA0 and is a vector of unobservable random errors. For the kth ground control or tie point being the ith image point on the jth image, we get (29) Fi0 ⫹ dFi ⫹ ⫽ 0 冋 册 册 (40) (41) in which ⭸u ⫽ [0 0 1 0 L 0 H 0 2P 0 LH 0 2LP 0 L2 3P 2 H2 0 2PH 0]T ⭸P (35) (42) Ja nuar y 20 03 65 ⭸u ⫽ [0 1 0 0 P H 0 2L 0 0 PH 3L2 P 2 H 2 2LP 0 0 2LH 0 0]T ⭸L 冤冥 AG1 ⯗ AG ⫽ A Gi (43) ⯗ ⭸u ⫽ [0 0 0 1 0 L P 0 0 2H PL 0 0 2LH 0 0 2PH L2 P 2 3H 2]T ⭸H (44) Likewise AAi dxA ⫽ 冤 0…0 ⫽ 冤 冥 0 ⭸FSi ⭸xTA x dxA AGi ⫽ 冟 0 0 冟 ⭸FLi ⭸aL(j) x 0 0 ⭸FSi ⭸b0(j) x 0 0 0 冟 0 冟 ⭸FSi ⭸bS(j) x 0 冥 0…0 0 冟 ⭸FSi ⭸bL(j) x dxA ⭸FLi ⭸k x ⭸FSi ⭸ kx ⭸FSi ⭸ kx 0 0 冤 or 冥冋 册 dxA dxG 冤 冥 wP w ⫹⫽ A wG A dx ⫹ ⫽ w 冤 0 CA 0 (45) 冥 (46) (48) where AA is the first-order design matrix for the image adjustment parameters, 冤冥 AA1 ⯗ AA ⫽ A Ai (49) ⯗ AAi is the first-order design sub-matrix for the ith image point on the jth image, AAi (50) 冋 册 0 … 0 1 Sample i(j) Line i(j) 0 0 0 0…0 0…0 0 0 0 1 Sample i(j) Line i(j) 0 … 0 AG is the first-order design matrix for the object-space coordinates, Ja nuar y 20 03 0 (52) (53) wPi is the sub-vector of misclosures for the image-space coordinates of the ith image point on the jth image, wPi (47) 0 0 CG 0 ⯗ with the a priori covariance matrix of the vector of misclosures, w, CP Cw ⫽ 0 0 0…0 0 ⭸FSi ⭸hk x 冤冥 Consequently, the RPC block adjustment model in matrix form reads AG 0 I 冥 0…0 w P1 ⯗ wP ⫽ w Pi 册 AA I 0 冟 冟 0 ⭸FLi ⭸hk x wP is the vector of misclosures for the image-space coordinates, 0 … 0 1 Sample i(j) Line i(j) 0 0 0 0…0 0 0 1 Sample i(j) Line i(j) 0 … 0 0…0 0 冟 冟 ⭸FLi ⭸k x 0…0 0 ⭈ [… da0(j) daS(j) daL(j) db0(j) dbS(j) dbL(j)…]T 66 冤 0…0 ⭸FLi ⭸aS(j) x 0 冟 冟 0…0 冋 ⫽ AGi is the first-order design matrix for the object-space coordinates of the kth ground control or tie point being the ith image point on the jth image, with the elements of AGi computed by Equations 38 to 44, 0 ⭸FLi ⭸a0(j) x 0…0 ⫽ 冟 冟 冟 ⭸FLi ⭸xTA x (51) ⫽ 冋 Line(j) ⫺ a(j) ⫺ a(j) ⭈ Sample (j) ⫺ a(j) ⭈ Line (j) ⫺ p(j)(k0, k0, hk0) i 0 S i L i 0 0 0 ⫺ b(j) ⫺ b(j) ⭈ Sample (j) ⫺ b(j) ⭈ Line (j) Sample(j) ⫺ r (j)(k0, k0, hk0) i 0 S i L i 0 0 0 册 (54) wA ⫽ 0 is the vector of misclosures for the image adjustment parameters, wG ⫽ 0 is the vector of misclosures for the object-space coordinates, CP is the a priori covariance matrix of image-space coordinates, CA is the a priori covariance matrix of the image adjustment parameters, and CG is the a priori covariance matrix of the object-space coordinates. It is seen that the proposed math model for block adjustment with RPCs allows for the introduction of a priori information using the Bayesian estimation approach. The Bayesian approach blurs the distinction between observables and unknowns — both are treated as random quantities. In the context of least squares, a priori information is introduced in the form of weighted constraints. A priori uncertainty is expressed by CA, CP, and CG. CA expresses the uncertainty of a priori knowledge of the image adjustment parameters. For example, in an offset only model, the variances of a0 and b0, i.e., the diagonal elements of CA, express the uncertainty of a priori satellite attitude and ephemeris, as explained in the text. CP expresses prior knowledge of image-space coordinates for ground control and tie points. Line and sample variances in CP are set according to the accuracy of the image measurement process. CG expresses prior knowledge of object-space coordinates for ground control and tie points. In the absence of any prior knowledge of the object coordinates for tie points, the corresponding entries in CG can be made large enough, e.g., 10,000 meters, to produce no significant bias in the solution. Equivalently, one could also remove the weighted constraints for object coordinates of tie points from the observation equations. PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING Experimental Results Figure 6. Image and GCP layout for Mississippi Project. On the other hand, being able to introduce prior information for the object coordinates of tie points adds flexibility. It should be noted that, without a priori constraints on the image adjustment parameters and ground control, there would exist a datum defect, which would result in rank deficient normal equations. The datum defect can be taken care of by either using the Bayesian approach, i.e., adding a priori weighted constraints on the image adjustment parameters to the observation equations as indicated above, or, if available, by using sufficient ground control. To prevent under- or over-constraining the solution, the a priori constraints on the image adjustment parameters must be based on a realistic assessment of prior knowledge of satellite attitude and ephemeris. Using Bayesian formulation permits adjusting multiple independent images together with or without ground control. Because the math model is non-linear, the least-squares solution needs to be iterated until convergence is achieved. At each iteration step, application of the least-squares principle results in the following vector of estimated corrections to the approximate values of the model parameters: ⫺1 dx̂ ⫽ (AT C⫺1 AT C⫺1 w A) w w. (55) At the subsequent iteration step, the vector of approximate model parameters x0 is replaced by the estimated values x̂ ⫽ x0 ⫹ dx̂, and the math model is linearized again. The least-squares estimation is repeated until convergence is reached. The covariance matrix of the estimated model parameters follows with ⫺1 Cx̂ ⫽ (AT C⫺1 w A) . (56) A project located in Mississippi, with six stereo strips and a large number of well-distributed GCPs as shown in Figure 6, was selected to demonstrate the RPC block adjustment technique. Cultural features such as road intersections were used for ground control and check points. Each of the 12 source images was produced as a georectified image with RPCs. The images were then loaded onto a SOCET SET姞 workstation running the custom-developed RPC block adjustment model as described by Equations 19 and 20. Multiple well-distributed tie points were measured along the edges of the images. Ground points were selectively changed between control and check points to quantify block adjustment accuracy as a function of the number and distribution of GCPs. The block adjustment results presented below were obtained using a simple two-parameter, offset only, model with a priori values for a0 and b0 of 0 pixels and a priori of 10 pixels. Average and standard deviation errors for GCPs and check points were computed for each of the tested GCP scenarios. The results are summarized in Table 3. The average errors without ground control were ⫺5.0, 6.2, and 1.6 meters in longitude, latitude, and height. This illustrates Ikonos accuracy without ground control. The addition of one ground control point reduced the average error to ⫺2.4, 0.5, and ⫺1.1 meters. While additional ground control further reduced the average errors, the standard deviation remained virtually unchanged at 1 meter in longitude and latitude and 2 meters in height. The standard deviation did not appreciably change until all 40 GCPs were used, at which point the ground control overwhelmed the tie points and the a priori constraints and, thus, effectively adjusted each strip separately such that it minimized control point errors on that individual strip. Similarly impressive accuracy improvements have been reported by Fraser et al. (2002), further validating the two-parameter bias compensation approach for Ikonos RPCs. Horizontal errors for GCPs and check points are plotted in Figure 7. GCPs are marked with large circles while check points are denoted by small circles. The adjusted parameter values for the all-GCP case are tabulated in Table 4. The image identifications follow Ikonos practice: 4-digit year, 2-digit month, 2-digit day, followed by some other digits, and finally a 5-digit sequence number. Stereo images were taken on the same orbital path; hence, they have the same date. Stereo strips are numbered 1 through 6, consecutively, from West to East. The sample and line offset adjustments are shown for each image. The adjustments are seen to be small, mostly under 10 pixels, thus demonstrating the high a priori accuracy of uncontrolled Ikonos images. Conclusions The RPC camera model provides a simple, fast, and accurate representation of the Ikonos physical camera model. What has been lacking thus far is an accurate and robust method for block adjustment of images described by RPCs. The proposed RPC TABLE 3. MISSISSIPPI BLOCK ADJUSTMENT RESULTS GCP None 1 in center 3 on edge 4 in corners All Average Error Longitude ⫺5.0 ⫺2.4 ⫺0.4 ⫺0.2 0.0 m m m m m Average Error Latitude 6.2 0.5 0.3 0.3 0.0 PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING m m m m m Average Error Height 1.6 ⫺1.1 0.2 0.0 0.0 m m m m m Standard Deviation Longitude 0.97 0.95 0.97 0.95 0.55 m m m m m Standard Deviation Latitude 1.08 1.07 1.06 1.06 0.75 m m m m m Standard Deviation Height 2.02 2.02 1.96 1.95 0.50 m m m m m CE90 LE90 8.2 3.3 2.2 2.2 1.4 3.7 3.5 3.2 3.2 0.8 m m m m m Ja nuar y 20 03 m m m m m 67 directly related to the geometric properties of the physical camera model. As a result, the RPC block adjustment model is mathematically simpler and numerically more stable than the traditional adjustment of exterior and interior orientation parameters. Furthermore, as demonstrated by simulation and numerical examples, for the Ikonos satellite imagery the RPC block adjustment method is as accurate as the Ikonos ground station block adjustment with the physical camera model. Because RPC models can describe a variety of sensor systems, this method is generally applicable to any imaging system with a narrow field of view, a calibrated stable interior orientation, and accurate a priori exterior orientation. References Figure 7. (a) Horizontal errors without GCPs. (b) Horizontal errors with one GCP in center. (c) Horizontal errors with three GCPs on one edge. (d) Horizontal errors with four GCPs in corners. TABLE 4. ADJUSTMENTS FOR THE ALL-GCP CASE Stereo Strip ID 1 2 3 4 5 6 Image ID 20000704 20000704 20001030 20001030 20000424 20000424 20001030 20001030 20000916 20000916 20000927 20000927 ... ... ... ... ... ... ... ... ... ... ... ... 21524 21526 14080 14079 12632 12630 14077 14078 13445 13443 22340 22339 Line Offset Adjustment (a0) [pixels] Sample Offset Adjustment (b0) [pixels] ⫺8.2 ⫺5.6 ⫺9.3 2.5 ⫺2.8 ⫺1.9 ⫺3.9 ⫺3.3 ⫺8.8 ⫺8.0 ⫺2.4 ⫺9.0 ⫺8.4 ⫺7.0 ⫺16.2 0.3 ⫺4.0 ⫺8.2 ⫺7.5 ⫺6.9 ⫺3.4 ⫺2.1 ⫺1.7 ⫺12.1 block adjustment method relies on combining multiple physical camera model parameters having the same effect on the object-image relationship into a single adjustment parameter, 68 Ja nuar y 20 03 Dial, Gene, 2001. IKONOS overview, Proceedings of the High-Spatial Resolution Commercial Imagery Workshop, 19–22 March, Washington, D.C. (Stennis Space Center, Mississippi), unpaginated CD ROM. Dial, Gene, Laurie Gibson, and Rick Poulsen, 2001. IKONOS satellite imagery and its use in automated road extraction, Automatic Extraction of Man-Made Objects from Aerial and Space Images (III) (Emmanuel P. Baltsavias, Armin Gruen, and Luc Van Gool, editors), A.A. Balkema Publishers, The Netherlands. Dial, Gene, and Jacek Grodecki, 2002. Block adjustment with rational polynomial camera models, Proceedings of ASPRS 2002 Conference, 22–26 April, Washington, D.C. (American Society for Photogrammetry, Bethesda, Maryland), unpaginated CD ROM. Fraser, Clive S., Harry B. Hanley, and T. Yamakawa, 2002. High-precision geopositioning from IKONOS satellite imagery, Proceedings of ASPRS 2002 Conference, 22–26 April, Washington, D.C. (American Society for Photogrammetry, Bethesda, Maryland), unpaginated CD ROM. Grodecki, Jacek, 2001. KONOS stereo feature extraction—RPC approach, Proceedings of ASPRS 2001 Conference, 23–27 April, St. Louis, Missouri (American Society for Photogrammetry and Remote Sensing, Bethesda, Maryland), unpaginated CD ROM. Grodecki, Jacek, and Gene Dial, 2001. IKONOS geometric accuracy, Proceedings of Joint International Workshop on High Resolution Mapping from Space, 19–21 September, Hannover, Germany, pp. 77–86 (CD-ROM). Hu, Yong, and C. Vincent Tao, 2001. Updating solutions of the rational function model using additional control points for enhanced photogrammetric processing, Proceedings of Joint International Workshop on High Resolution Mapping from Space, 19–21 September, Hannover, Germany, pp. 234–251 (CD-ROM). Tao, C. Vincent, and Yong Hu, 2001. A comprehensive study of the rational function model for photogrammetric processing, Photogrammetric Engineering & Remote Sensing, 67(12):1347–1357. Toutin, Thierry, and Philip Cheng, 2000. Demystification of IKONOS, Earth Observation Magazine, 9(7):17–21. (Received 07 February 2002; accepted 04 June 2002; revised 10 July 2002) PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING