DEVELOPMENT OF CAMERA MODEL AND GEOMETRIC CALIBRATION / VALIDATION OF XSAT IRIS IMAGERY

XSAT, launched on 20 April 2011, is the first micro-satellite designed and built in Singapore. It orbits the Earth at altitude of 822km in a sun synchronous orbit. The satellite carries a multispectral camera IRIS with three spectral bands -0.52~0.60 mm for Green, 0.63~0.69mm for Red and 0.76~0.89 mm for NIR at 12m resolution. In the design of IRIS camera, the three bands were acquired by three lines of CCDs (NIR, Red and Green). These CCDs were physically separated in the focal plane and their first pixels not absolutely aligned. The micro-satellite platform was also not stable enough to allow for co-registration of the 3 bands with simple linear transformation. In the camera model developed, this platform stability was compensated with 3rd to 4th order polynomials for the satellite’s roll, pitch and yaw attitude angles. With the camera model, the camera parameters such as the band to band separations, the alignment of the CCDs relative to each other, as well as the focal length of the camera can be validated or calibrated. The results of calibration with more than 20 images showed that the band to band along-track separation agreed well with the preflight values provided by the vendor (0.093° and 0.046° for the NIR vs red and for green vs red CCDs respectively). The cross-track alignments were 0.05 pixel and 5.9 pixel for the NIR vs red and green vs red CCDs respectively. The focal length was found to be shorter by about 0.8%. This was attributed to the lower operating temperature which XSAT is currently operating. With the calibrated parameters and the camera model, a geometric level 1 multispectral image with RPCs can be generated and if required, orthorectified imagery can also be produced.


INTRODUCTION
XSAT is the first Earth Observation microsatellite of Singapore launched on 20th April 2011.It operates in a polar sun synchronous orbit with altitude about 822km above the earth.The satellite carries one primary payload and two secondary payloads.The primary payload is the IRIS, a multispectral camera with green (520 nm -600 nm), red (630 nm -690 nm), and near-infrared (760 nm -890 nm) wavelength range and designed as a push-broom scanner with three individual scan lines.Each of the three linear detector arrays consists of 5066 active elements.The secondary payloads are Parallel Processing Unit (PPU) and GPS.It also carries Attitude Determination and Control System (ADCS).
The satellite transmits high speed payload data via an X-Band transmission to the CRSIP ground station for processing.The objective of the work was to develop a camera model for the geometric processing of the XSAT IRIS camera data so that it can be used for further downstream applications.
During image acquisition, the NIR CCD will image a line on the ground, followed by the Red CCD on a line about 0.2 sec later, and then the Green CCD about 0.1 sec later.These CCDs were physically separated in the focal plane and their first pixels not absolutely aligned.This design will require the satellite platform to be very stable.However, due to platform movement during imaging, the system is not enough to allow coregistration of the 3 bands with simple linear transformation.
In the camera model developed, this platform stability was compensated with 3rd to 4th order polynomials for the satellite's roll, pitch and yaw attitude angles.With the camera model, the next step was to calibrate or validate the camera parameters which include the band to band separations, the alignment of the CCDs relative to each other, as well as the focal length of the camera.In some cases when the GPS receiver or ADCS lost tracking, the ground control points (GCP) will be used for the parameters estimation.

Coordinate Systems
The IRIS camera model relates pixel coordinates in the imagery with rays in space.The 3 CCD arrays are continuous, linear, but not co-registered on the focal planes due to the differences of view angles and timing.The sensors are pushbroom imaging devices that form images one line at a time by using the motion of the spacecraft to scan a telescope over the ground.The telescope projects the image onto linear arrays of CCD that are mounted on the focal planes.The telescope and CCD are fixed to the spacecraft body, which orbits about the earth and rotates about its centre of mass during a strip exposure.Both the attitude and position of the telescope must be known in order to compute the instantaneous camera station and orientation.
The XSAT is designed to provide GPS timing and locations of the satellite and star tracker attitudes quaternion as ancillary data.Unfortunately, due to a design error, the star tracker is not operable for daytime imagery after launch, thus there is no apriori attitude information for its imagery.The available pointing information is for slewing and pointing the satellite body and is not accurate enough for geometric computation.As a workaround, we use GCPs to compute the attitude knowledge of roll, pitch and yaw.
The currently implemented XSAT camera model is a rigorous model similar to that of SPOT satellites (SPOT Image, 2002).We also follow the design for a generic pushbroom sensor model (Weser et al. 2007).The model uses five coordinate systems:  An orbital coordinate system (O), a time dependent system with origin defined by the satellite position P(t) at time t;  A platform coordinate system (P), also called navigation system for SPOT satellite, fixed to the satellite with origin located at the satellite's centre of mass, the 3 axes with the orbital system O when the attitude angles roll, pitch and yaw (, , ) are zero;  A camera coordinate system (C), with origin mounted in the platform system, X axis parallel to the CCD array, Y axis parallel to focal plane;  An image file coordinate system;  Earth centred coordinate system, such as ECEF (E) or ECI (I).

Transformations
The sensor model has to describe the transformation relating the position of a point in ECEF to the position in the image.The IRIS being a push-broom scanner system has only one row of CCD per spectral band.The line number of any band in the image is thus related to the CCD sampling time as follows: ( where is the start time for the first image line, is the sampling rate of IRIS, equivalents to 3.001/2040 second. Assuming the separation of each pixel is linear and CCDs are parallel, the look vector for each pixel ( ) for band ( ) is given below: (2) where for Red, Green, NIR band respectively, is the along track separation of band (k) CCD from the red band CCD, is the cross-track alignment of band k CCD from the red band CCD and F is the scale change in FOV from the nominal FOV (pre-flight FOV is 4.21°), is the number of CCDs for each band ( = 5066).

,
and F are the parameters we will determine.
The unit look direction is as follows: (3) For XSAT satellite, the camera is mounted in the platform system at the centre of the platform system.There is no rotation or movement between camera and the platform.
For all satellites, there must be on-board sensors to measure the time-dependent attitude variations of the platform either reference to orbital coordinate, such as SPOT123 and 4, or reference to ECI, such as SPOT5.In design, XSAT has the onboard star tracker sensor measuring absolute attitude as quaternion with reference to ECI coordinate from the star tracker measurement coordinate (M).The instance quaternion at time t j can be derived (David Eberly, 1999) using spherical linear interpolation (Ken Shoemake 1987), spherical cubic interpolation (W.Boehm 1982) or spline interpolation (Gerald Farin, 1990).Assume the quaternion can be expressed as , as the transformation from star tracker coordinate to the platform coordinate is given by the vendor, the quaternion of the platform relative to ECEF can be derived as follows: (4) is the Greenwich Hour Angle.
Thus the look vector transformed using quaternion can be expressed as follow: (6) where is the look vector in ECEF coordinate.
Unfortunately, due to some system faults, the star tracker onboard XSAT satellite does not work properly for day image passes.We would consider the attitude variations with reference to orbital coordinate.The rotation matrix describe the rotation from platform to orbital system (Eq.7 ).Where is the look vector in orbital coordinate, is further derived by the rotation angles of roll , pitch and yaw of platform to orbital at time corresponding to image line j of any band.The orbital coordinate system is defined that the centre of the system is the mass of the satellite, axis is defined parallel to the satellite position , axis is orthogonal to both velocity and position at time , axis completes the right hand orbital system.The unit vectors of , , axes of orbital coordinate can be computed as follow: (8) The transformation matrix from orbital coordinate system to the ECEF coordinate can be defined according to the following equation: (9) Finally, the look vector is then transformed into ECEF coordinate .The whole transformation is as follow: (10) Equations ( 6) and (10) also show that from Euler angles is equivalent to from star tracker quaternion with the following equation: (11) In the above equations, and can be obtained by interpolating the position and velocity coordinates provided by the on-board GPS receiver using Lagrange interpolation.If the GPS receiver works not properly, we may compute them from the TLE using SGP4 propagation model (Kelso, 2000).
In short, the platform to ECEF transformation can be calculated by quaternion from the star tracker with equations (4) to (6), or by from Euler angles with equations ( 7) to (10).
The unit look vector in the ECEF frame is the image ray to the earth.We assume that it intersects with the ellipsoid located at an altitude above the earth surface at the geocentric position (Eq.12): (12) where is the scaling factor for the image ray, also the distance from satellite position to the intersect point (Fig. 1).
Figure 1 -Imaging Geometry and intersection of look vector with earth surface must also satisfy the equations for the ellipsoid as follows: (13) Where a and b are the semi-major and semi-minor axis of the earth ellipsoid.Substituting equation ( 12) into (13) and rearranging the equations give us a quadratic in μ. (14) Solving the quadratic equation in ( 14), give us either no solution, in which case the satellite is looking away from the earth, or 2 values of μ.The smaller value should be chosen and substituted back into the equation ( 12) above to give the geocentric coordinates of the intersection point.
The geocentric coordinates are then converted to the geographic latitude, longitude and height (φ, λ, h) coordinates in the usual way.

MODEL PARAMETERIZATION
Due to the system errors such as principal point displacement, focal length variation, radial symmetric and decentring lens distortion, we have introduced the parameters of this correction model in the above section: , and F .
As the star tracker is not working properly, this model uses the Euler angles for the platform transformation.During the satellite travels in space, and due to some instability issues, the roll, pitch and yaw angles of the sensor attitude are represented by time-dependant polynomials, one for each attitude angle (Eq.15).2nd to 5th order polynomials are chosen for testing.From experimentation, we found that 4 th order polynomials for pitch and roll and 2 nd order polynomials for yaw worked best. (15) In summary, the parameters of this correction model include: , , F, 5 coefficients from 4th order polynomial for pitch angle, 5 coefficients from 4th order polynomial for roll angle, 3 coefficients from 2th order polynomial for yaw angle.
In the current implementation, the red band is taken to be the reference band.We also assume that F is the same for all bands.As , are zeros, Thus there are total 14 parameters for Red band.
In order to solve the parameters, a number of GCPs with image coordinates from the XSAT image and geographic coordinate latitude, longitude from GoogleEarth are chosen for testing.The parameters can be estimated and corrected by least square adjustment based on a suitable number of GCPs.
Since the same line of images regardless of bands, represents the same instant in time, the parameters of the camera model computed with the red band will be applicable for the NIR and green bands except that along track separation and cross track alignment are different.
The and for the NIR and green bands can be computed from a set of red-to-NIR tie points from images of red and NIR bands, or a set of red-to-green tie points from images of red and green bands.

PRELIMINARY RESULTS
The computations were applied to 23 XSAT IRIS images acquired on 25 May, 31 May, 2 June, 3 June, 6 June and 27 June 2011.Table 1 shows the summary of the preliminary calibration values.
From the table, the average measured FOV was 4.243° (preflight measurement is 4.21°), indicating a possible shortening of effective focal from 896mm to 889mm.This shortening could be due to the lower operating temperature of the camera.
The along track angular separation of 0.092773° and 0.045974° compare well with the pre-launch figures of 0.092086° and 0.046049° given in the IRIS operational handbook.The cross track alignments were not given in the IRIS operational handbook, but were measured to be 0.05 pixels between the NIR and red bands and 5.9 pixels between the green and red bands.The standard deviation of the cross track alignment at 0.9 pixels and 0.35 pixels were higher than expected.This could be due to satellite attitude variations not sufficiently modelled by the polynomials for roll, pitch and yaw angles.
The calibration values can be applied to all XSAT imagery.In the later processing, only the parameters of attitude should be corrected using the GCPs for red band.The same parameters can be applied to other two bands.The multispectral image can be achieved by merging 3 bands together.
With the above rigorous model, hundreds pairs of data at different height level could be generated.Therefore, the reverse model Rational Polynomial Coefficients (RPC) for transformation from geographic coordinates to image coordinates could also be derived.The orthorectified image thus may generated simply by the derived RPC and 90 metre resolution SRTM data.Figure 2 shows the orthorectified multispectral image of XSAT.

CONCLUSION
XSAT has now begun its primary mission of earth observation.CRISP will monitor the performance of the IRIS payload over time.The current camera model will be revisited to improve the camera model and precision of the parameters.Periodic calibration and validation exercise will also be carried to study any changes over time.The current camera model had been used to generate orthorectified multispectral images for subsequent applications.We hope that the study of the XSAT camera model will contribute a little to our future satellite development.

Table 1 .
Preliminary calibration values for XSAT camera model