| 2004
ed, the
Terent,
atellite
'D-line
to the
er time
into
rection
ingles"
1 basic
e been
; of the
litional
nnover
merical
justify
rogram
gue. to
on a
| total
'ization
ered by
ise
ter with
ate the
.ttitude
is such
Camera
rdinates
can be
Product
ean and
system
d for a
pan the
imaging
stimates
system.
yy four-
ation of
y such a
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B4. Istanbul 2004
3D rotation can be expressed by a rotation angle, 0, and an axis
of rotation given by unit vector components (€. &,, &) in the
ECF frame. The sign and rotation angle follows the right-hand
rule. Finally the quaternion (ql, q2, q3, q4) is related to 0 and
(&, &y. &) by:
q1 = &, sin(0/2)
q2 = &, sin(6/2)
q3 = €, sin(0/2)........ (2)
q4 = cos(0/2)
The image lines in the Level 1B product are sampled at a
constant rate. This means that the imaging time can be
computed directly from the given data avgLineRate (Average
Line Rate) and firstLineTime (First Line Time) with no
approximations:
t=r/ avgLineRate * firstLineTime .... (3)
One point on the imaging ray is the perspective centre of the
virtual camera at time t. The coordinates of the perspective
centre in the spacecraft coordinate system are constant and
given data. In matrix notation:
Cs (CC CL (4)
Where Cx, Cy and C; are values in the camera calibration file
(*.geo file). It is possible to locate the origin of the spacecraft
coordinate system in the ECF system at a time t by interpolating
the position time series in the ephemeris file. Let us call this
position Sg(t). Likewise, we can find the attitude of the
spacecraft coordinate system at a time (t) in the ECF system by
interpolating the quaternion time series in the attitude file. This
quaternion, q°g(t), represents the rotation from the ECF system
to the spacecraft body system at time t. Then using quaternion
algebra, the position of the perspective centre at time t in the
ECF coordinate system is:
Cet) = (@"s(1)" Cs q"s(0) + Se(0, or
C(t) = q*&(t) Cs (q9r(t))" + Sp() (5)
Alternatively, computing R(t), the rotation matrix from the
given quaternions q'r(t) for time (t) as a rotation from the
spacecraft body to the ECF, then (5) above can be expressed by:
Cat) +R) Es + Spb oo (6)
Expressions (5) and (6) are the position of the projection centre
Xp =0
Yp = -c*detPitch, with detPitch being the
distance (in mm) between centres of adjacent pixels in the array
To convert these detector coordinates to camera coordinates, it
is necessary to apply the rotation and translation given by the
following equations:
Xc = cos(detRotAngle)* X - sin(detRotAngle)* Y, +
detOriginX
Xe = sin(detRotAngle)* Xp + cos(detRotAngle)* Y, +
detOrieiny =... 0 (7)
Zp = C (Virtual Principal Distance)
With detRotAngle being the Rotation of the detector coordinate
system as measured in the camera coordinates system in
degrees. detOriginX and detOriginY are the X and Y
coordinates of the pixel 0 in the linear detector array, in the
camera coordinates system, in mm. detRotAngle, detOriginX
and detOriginY are included in the calibration data file (*.geo).
As Level IB images do not have lens distortion the corrected
image point is identical to the measured image point, hence:
Xc' 7 Xc
Ye Em Yc Gat ahi we is ewe (8)
Zo’ = Zc
The unit vector wc that is parallel to the external ray in the
camera coordinate system is just the position of (Xc', Yo, Zc^)
relative to the perspective centre at (0, 0, 0), normalized by its
length. In matrix notation, this vector is:
We 7 (Xc', Ye Ze)" and wc 7 Wc/| Wei] (9)
It is possible to convert this vector first to the spacecraft
coordinate system and then to the ECF system. The unit
quaternion for the attitude of the camera coordinate system, i.e.,
the quaternion for the rotation of spacecraft frame into the
camera frame q^, is in the geometric calibration file (*.geo).
Then, using quaternion algebra
We = q's(0 qc Wc q'c q'«(t) or
Wr 7 q^ k(t) qs we (9° (1) 4%)” or using matrix algebra,
Wi = RED Rew, Vi plums Ww (10)
The resulting multiplication matrix R"«(t) has following form:
With:
[R «(0] -(R'S()R* )'-
? » 2 5
ww + an — bu — ‘Cum
2aubu) — 2w€u)
Î
2 2 2 2
OQ t ao t bo tco
2boco + 2wbu
au bu) +; 20@wWCw
2 2 2 2
Q^ —aun + bw“ — Cm
Du Cu) - 20a
2xc - 20b
2buco *- 2000 (11)
2 2 2 2
œ — au’ — bu)” +E€u)
at the instant (t) expressed in the ECF coordinate system that
May corresponds to a position of a GCP in the image. In this
way it can be replaced in expressions (1) above for the position
(line j) that corresponds to a time (t).
For any column and row measurement (c, r) of a pixel in the
image, the corresponding position of the image point in the
detector coordinate system (relative to the centre of the lowest
numbered pixel in the detector) is:
697
: constant term, being a function of both scalars qs (4) and
s
q c (4) :
ag; by; cq: Are elements of the instantaneous rotation matrix
[RF(t)]" also function of the quaternions q(t) for the instant
(t) and q
The above instantaneous matrix rotation can be used in
expressions (1) above for the corresponding line (time) image
where a CGP or an interest point is to be observed.