Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Initial Approximations

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Initial Approximations for the

Three-Dimensional Conformal Coordinate


Transformation
Ban A. Dewitt

Abstract m,, = - cos(a) cos(s) - sin(a] cos(t) sin(s)


The three-dimensional conformal coordinate transformation m,, = sin(a) cos(s) - cos(a) cos(t) sin(s)
has many applications. In terrestrial photogrammetry it can m,, = - sin(t) sin(s)
be used to transform arbitrary stereomodel coordinates to ob- m,, = cos[a) sin(s) - sin(a) cos(t) cos(s)
ject space systems. Determination of initial approximations m,, = - sin(a) sin(s) - coda) cos(t) cos(s)
in such situations is typically not as straightforward as in the
aerial case. A method is presented which allows a direct so- m,, = - sin(t) cos(s)
lution of initial approximations given any arbitrary angular m,, = - sin(a) sin@)
orientation and three-dimensional control. m,, = cos(a) sin(t)
-

ms3 = cos(t)
Introduction m,, = cos(q) COS(K)
The three-dimensional conformal (seven-parameter) transfor- mi, = sin(@)sin(q) COS(K) + COS(O)sin(^)
mation is commonly used when transforming coordinates
from a stereomodel into an object space system, or to link m,, = - cos(w) sin[q) COS(K) + sin(@) sin(^)
adjacent stereomodels to form a strip. It uses seven parame- m,, = - c o s ( ~ ]sin(^)
ters: scale; three rotations (omega, phi, and kappa); and m, = - sin(o) sin(cp) sin[^) + cos(o) COS(K) (3)
translations in x, y, and z. When dealing with nominally ver- m,, = cos(w) sin(cp) sin(^) + sin(w) COS(K)
tical photography, determination of initial approximations m,, = sin(cp)
for the non-linear, iterative solution is straightforward be-
cause the values of omega and phi can be assumed to be m,, = - sin(@)COS(Q)
zero (Moffitt and Mikhail, 1980). However, in close-range M,,= cos(0) cos(cp)
photogrammetry, the values of the three rotation angles can
take on any value, and assumption of zero values generally
leads to a divergent solution. To overcome this difficulty, a For vertical aerial photography, the values of tilt or
method has been devised which enables accurate determina- omega and phi are nominally zero. However, for close-range
tion of initial approximations for all parameters, thus ensur- applications, the camera axis can be pointed upward from
ing convergence of the iterative solution. the horizon, causing one or more of these angles to be
greater than 90 degrees. In order to analyze rotations involv-
ThrebDimensional Rotations ing such large values, numerical ranges encompassing each
The angular attitude of three-dimensional Cartesian coordi- of these angular parameters must first be defined. Convenient
nate axes in one system relative to another can be speczed ranges of values for these parameters are as follows:
by three independent parameters. Two common sets of para-
meters are tilt, swing, azimuth and omega, phi, kappa. A dis- tilt: (0' to 180') omega: (-180" to 180")
cussion and derivation of the equations for these parameters swing: (-180" to 180°) phi: (-90" to 90')
can be found in Wolf (1983). From either of these two sys- azimuth. (-180" to 180') kappa: (-180" to 180')
tems, a three-dimensional rotation matrix can be derived. These ranges are chosen to fulfill two purposes. First, they
The rotation matrix format is given in Equation 1: i.e., enable allpossible angular orientations between two sets of
three-dimensional coordinate axes to be uniquely defined,
thus circumventing the duality problem discussed by Shih
(1990). Second, they enable a straightforward conversion be-
tween the tilt, swing, azimuth system and the omega, phi,
kappa system. Note that the ranges shown for swing, azi-
The definitions of the elements of the rotation matrix in muth, and kappa are not the typical 0" to 360'. This is done
terms of tilt It), swing Is), azimuth (a)and omega (4,phi (Q), for convenience within the program.
kappa (K) are given in Equations 2 and 3, respectively: i.e., With the above range definitions, converting between the two

Photogrammetric Engineering & Remote Sensing,


Vol. 62, No. 1,January 1996, pp. 79-83.
0099-1112/96/6201-79$3.00/0
Surveying and Mapping, College of Engineering, University Q 1996 American Society for Photogrammetry
of Florida, 345 Weil Hall, Gainesville, EL 32611-6580. and Remote Sensing

PE&RS Januwy 1996


avoided. Visualization of what these angles mean can be dif-
3 ficult; however, mathematically it all works out.

Vectors and Planes


Part of the procedure for computing initial approximations
for the rotations involves determination of the normal vector
to a plane. The fundamentals are briefly presented here.
Given three points (1,2 , and 3) in three-dimensional space, a
vector (see Figure 1)which is normal to the plane defined by
these points can be computed by use of the cross-product
given in Equation 14. This cross-product can be computed
using determinants (Thomas and Finney, 1982), as illustrated
by Equation 15: i.e.,

Figure 1.Vector N, normal to plane 1-2-3.

systems is elementary. It does require the use of an inverse


tangent function which computes the full-circle range from Thus, Equation 16 shows_the form of the normal vector,
-1800 to 1800. such as the uatan2,, function in FORTRAN or in terms of unit vectors: i, j, k: i.e.,
C. To convert'from either system to-the other, first the rota-
tion matrix (or at least the necessary terms within it) is
= mi + b-j + CE (16)
formed from the angles in the given system. Then, if the an- where
gles of tilt, swing, and azimuth are required, they can be
computed by Equations 4, 5, and 6: i.e.,
tilt = COS-' (q3)
swing = tan-' (-m,,l-m,,) In developing a procedure for determining the angular
azimuth = tan-' (-m3,/-m,,) (6) relationship between the two systems, it was decided to ex-
press the attitude of the normal vector (as if it was pointing
Alternatively, given a rotation matrix, the values for along the negative z axis) in terms of tilt and azimuth. Figure
omega, phi, and kappa can be computed by Equations 7, 8, 2 shows the normal vector placed at the origin for the pur-
and 9: i.e., pose of determining these two angular parameters. Tilt is de-
termined by calculating the elevation angle above the x-y
Omega = tan-' (-m,/m,) plane and adding 90" to the result. From Figure 2, the ex-
pression for tilt, given in Equation 17, was obtained. The azi-
phi = sin-' (m,,) muth of the ngrmal vector is equal to the azimuth of the
kappa = tan-' (-m,,lm,,) (9) projection of N onto the x-y plane, and is given in Equation
18: i.e.,
The full-circle inverse tangent function [i.e., atan21 must
be used with the indicated numerators and denominators,
complete with leading minus signs where indicated, in order
to obtain the proper quadrant. Other difficulties which could
arise are determination of swing and azimuth when tilt is
zero and determination of omega and kappa when phi is 90
degrees. In these cases, both the numerator and denominator
are zero in Equations 5, 6, 7, and 9, giving undefhed results
from the inverse tangent function. Under these circum-
stances, Equations 10 and 11 or 1 2 and 13 can be applied:
i.e.,
If tilt =oa:
azimuth = 0"
swing = tan-' (-m,,l-m,,)
If phi = 90":
omega = 0"
kappa = tan-' (m,,lm,,)
Given the above treatment of the situation where tilt is zero,
the usual problem of swing and azimuth being undefined is I Figure 2. Normal vector, fi, at origin.
I
tilt = tan-I )7( C
aZ + b2 + 90' (1 7)
distance in the control system
scale = distance in the arbitrary system (22)

azimuth = tan-' )(: (I8)


Assuming there are no blunders and the representative line
is sufficiently long, an accurate approximation for the scale
factor can be determined this wav.
where a, b, and c are the coefficients of i, and $ respec- 5,
tively. Rotations of Omega, Phi, and Kappa
In Equation 18, it is again necessary to employ the full- Determination of accurate approximations for the three angu-
circle inverse tangent function (i.e., atan2) in order to obtain lar rotations is the crux of the method. This process shall be
the proper quadrant. presented in a sequence of seven steps.

Three-Dimensional Conformal Coordinate Transformation (1)Select the Three Geometdcally Strongest Polnts
A description and derivation of the three-dimensional con- In order to obtain sufficient geometric strength, three points
formal coordinate transformation can be found in Wolf having a widely distributed base must be selected. This is
(1983). Only a summary of the equations involved is pre- done to reduce the likelihood of choosing three points which
sented here. are nearly collinear. An analogy can be found in linking ster-
The seven unknown parameters for tliis transformation eomodels during strip formation in semi-analytical aerotrian-
are gulation, where the projection centers are used as common
points in order to provide additional geometric strength. The
s - scale factor; choice of three points will be based on the points which
w, ip, K - rotations about the x, y, z axes, respec- form a triangle having the largest altitude, where altitude is
tively; and defined as the perpendicular distance from the longest side,
T,,T,, T, - translations of the origin in the x, y, z di- to the point not on that side. This determination can be
rections. made in either the control or arbitrary system if no blunders
exist. Figure 3 illustrates how this altitude is defined. In this
The form of the transformation is given in Equations 19, figure the longest side is labeled (a) and, because the speci-
20, and 21: i.e., fied altitude is perpendicular to this side, it must be internal
to the triangle. A formula for the square of the altitude is
given by Equation 23: i.e.,

If more than three control points are available, the value


In these equations, the m values are elements of the rota- of h2 is computed for all combinations of three points and
tion matrix, previously specified as functions of o,rp, and K the set giving the largest is chosen.
(Equation 3). X,, Y,, Z, and X,,Yo,Z,are coordinates of a
point in the control and arbitrary systems, respectively. The (2) Compute the Normal Vectors at a Common Polnt in bath Systems
equations are non-linear in terms of s, o,cp, and K , requiring Computation of the normal vectors requires the application
an iterative least-squares solution. of Equation 16 at the common point in both systems. This
In order for the least-squares solution to be achieved, it will result in two sets of a, b, and c coefficients. One set is
is necessary for coordinates of common points to be based on the arbitrary coordinates and the other is based on
"known" (or measured) in both systems. These common the control coordinates.
points may consist of various combinations of horizontal and
vertical control. In a practical case, all three coordinates (x, (3) Determine Tilt and Mmuth for the Normal in each System
y, and z) will have been determined in the arbitrary (model) Tilt and azimuth of the normal vector in both systems are
system for each common point. The procedure for determin- based on Equations 1 7 and 18.
ing initial approximations (to be described next) requires that
full three-dimensional coordinates be known for at least (4) Perform an lnltlal Rotation of Polnts In both Systems Using Corresponding
three points in both systems. It is recognized that this con- Values of Tilt and Azimuth
straint (not allowing separate horizontal and vertical control) This rotation will cause the plane defined by the three points
is a limitation of the method. However, when this method is to be parallel to the x-y plane in both systems. It is accom-
used in conjunction with close-range applications, this con- plished by computing a rotation matrix for each system,
straint can be minimized by determining three-dimensional based on their respective values for tilt and azimuth, with
coordinates of the exposure stations and using them as two
of the required control points. This leaves only one addi-
tional three-dimensional control point which must be estab-
lished in object space. If additional common points are
available, various combinations of three points could be
used, and the results averaged. This would lead to a more re-
fined set of values and, perhaps more importantly, indicate
the presence of blunders in the observations.

Initial Approximation for Scale


Computation of the scale factor is straightforward. Select a
representative pair of points and calculate a ratio of com- a
puted lengths of the line in the two systems. In the usual
sense of the transformation (from arbitrary to control coordi- Figure 3. Altitude from longest side.
nates), this scale factor can be calculated by Equation 22: i.e.,

PE&RS January 1996


swing set equal to O0 (see Equation 2). Then this rotation ma- TABLE1. DATAFOR EXAMPLETRANSFORMATION.
trix is applied to two of the three points in each system, re- X-control Y-control Z-control x-arb y-arb z-arb
sulting in transformed points having equal z coordinates. Point (m) (m) (ml (mml (mm) b~)
This is accomplished as illustrated by Equations 24, 25, and
26: i.e.,

could be rearranged so that the translation terms are isolated


These equations are applied a total of four times, once on one side of the equation. Computation of the translations
for each of the two points in the control system and once for can then be performed using a common point.
each of the same two points in the arbitrary system. For the
fist two applications, the rotation matrix for the control sys- Example
tem is used along with x,y,zcontrol coordinates for the two To illustrate the method, the following example is given. Ta-
points. For the last two applications, the rotation matrix for ble 1lists the coordinates of the common points in both sys-
the arbitrary system is used along with corresponding x,y,z tems.
arbitrary coordinates.
The resulting prime coordinates define horizontal lines
in both systems and require application of a swing value to a Scale
line in one system to give it the same direction as the line in The longest line from the given set of four points is line 3-4.
the other system. Equation 26 is shown for clarity; however, After this has been determined, the scale computation in-
it is unnecessary to compute the z' coordinates because they volves the application of Equation 22 as illustrated below:
are not used in subsequent calculations. length of 3-4 (control) - 257.325
scale = ---
length of 3-4 (arbitrary) 106.147
- 2.4242
(5) Determine Swing by Difference in Azimuths for the Common Line
Using the transformed coordinates of the two points as deter-
mined in Step 4, compute the azimuth of the connecting line Rotations
in each system. The swing required to align the arbitrary sys- (1)Using every combination of three points from the total of
tem with the control system is then computed by Equation four, lengths of the sides of a triangle are computed, along
27: i.e., with the altitude. Table 2 summarizes these computations for
each of the four combinations. The columns headed SIDE a,
swing = azimuth(contro1) - azimuth(aribtrary) (27) SmE b, and SIDE c show the lengths of the three sides of the
triangle being considered, with SIDE a being selected as the
(6) ComMne the Two Tllts, Two Azimuths, and One Swlng Into One Overall longest. Column h gives the computed altitude for the trian-
Rotatlon Matrix gle. Note that points 1,2, and 3 gave the strongest triangle
Rotation matrix MI is formed using tilt and azimuth of the (largest h, marked by *) and are therefore used for the rota-
normal vector in the arbitrary system, in conjunction with tion calculations.
the swing value determined in Step 5. Rotation matrix M, is (2) Computation of the normal vectors in both systems
formed using only the tilt and azimuth of the normal vector results from application of Equation 16 to the two sets of co-
in the control system (i.e., M, remains as calculated in Step ordinates for points 1, 2, and 3. Table 3 shows a summary of
4). Equation 28 shows how a point's coordinates in the two the computation for both normal vectors at point 1. The col-
systems can subsequently be related: i.e., umns COEFF a, COEFF b, and COEFF c show the computed
normal vector coefficients.
(3) Application of Equations 1 7 and 18 to the coefficients
from Table 3 yields the listed tilt and azimuth values.
(4) Using the tilt and azimuth values from Table 3, the
following rotation matrices were calculated:
The "equals" sign in this equation is not technically ap- Arbitrary rotation matrix:
propriate. Its meaning in this context is "corresponds to" or
"is in a similar location as."
The rotation matrices are then combined into a single ro-
tation matrix M, as shown in Equation 29, where the
"equals" signs have the same meaning as in Equation 28:
i.e.,
Control rotation matrix:

(7) From Rotatlon Matrix M, Compute Values for Omega, Phi, and Kappa
This is accomplished by applying Equations 7, 8, and 9 or
possibly 1 2 and 13. Points SIDE a SIDE b SIDE c h

Translations in X, Y, and Z
Because the transformation equations are linear in terms of
T,, T,, and T,, initial approximations are not required. How-
ever, if their values were desired, Equations 19, 20, and 21

January 1996 PE&RS


SYSTEM COEFF a COEFF b COEFF c Tilt Azimuth
arbitrary -3810.6311 -3503.7284 -685.276 82.4590' -132.5973'
control -790.1507 -390.1890 30691.426 178.3553' -116.2809°
(7) Using Equations 7, 8, and 9 results in the following
values for omega, phi, and kappa:

- -

SYSTEM X'I Y'I x 'z Y'Z

Arbitrary 52.00781 73'80426 -14.55751 44.86396


Using these initial approximations, a three-dimensional con-
Control 248903.72 -691422.31 248919.02 -691597.64
formal coordinate transformation was performed, giving the
following set of corrections for the first iteration:

These rotation matrices are then applied, using Equations 24


and 25, to the corresponding coordinates of points 1 and 2
(from Table 1)to give the values listed in Table 4.
(5) Using coordinates of the endpoints of line 1-2 listed
in Table 4,the following azimuths are computed:
Conclusions
azimuth(arbitrary) = -113.4977" The foregoing method of computing initial approximations
azimuth(contro1) = 175.0136" for a three-dimensional conformal coordinate transformation
has been extensivelv tested and found to be successful in all
Equation 27 is then applied to these azimuth values to yield cases, under the as&.mptions of no blunders and strictly
the following value for swing: three-dimensional control points. It is particularly useful in
close-range photogrammetric applications where the unusual
swing = 288.5113" rotations can be difficult to predict or visualize.

(6) Using the value for swing computed in Step 5 and


the values for tilt and azimuth in the arbitrary system (from
Table 3) computed in Step 3, the following rotation matrix, Moffitt, Francis H., and E.M. Mikhail, 1980. Photogmmmetry, Third
M,, is computed: Edition, Harper & Row, New York, 648 p.
Arbitrary rotation matrix with swing: Shih, Tian-Yuan, 1990.The Duality and Critical Condition in the
Formation and Decomposition of a Rotation Matrix, Photogmm-
metric Engheering b Remote Sensing, 56(8):1173-1179,
Thomas, George B., and Ross L. Finney, 1982. Calculus and Anal*
Gearnew, Fifth Edition, Addison-Wesley, Reading Massachu-
setts, 891 p.
Wolf, Paul R., 1983.Elements of Photogrammetry, Second Edition,
When matrices wT and M, are multiplied, the following McGraw Hill, New York, 628 p.
rotation matrix, M, is computed: (Received 14 April 1993;revised and accepted 4 April 1994;revised
Overall rotation matrix: 1 July 19941

ASPRS MEMBERSHIP CERTIFICA TES

See your name in Print! Size: 11" x 14"


Purchase your beautiful ASPRS Logo is Metallic Blue
newly designed ASPRS with a Gold overlay.
Membership Certificate.
a, ,A a, rr,, ,%I, ,I,,,
To order your certificate
Active and Student Member LBiIlinm. . zrenrh contact:
Certificates are available for ,,,,,I,,,A-sr
c,,,v,,,,t ,f,,,,,l,,,,,,,fp,,, ,, ,A,./,LC , , c.,c
M~,/,L, Y:
.C~,,"I,"I~,,,~,
,(,I ~ , s,,,,~,,~/,,!
~ ,;,,,,A ~~~,,.,,,,,I,, ,:,~ , . ASPRS Membership
A,., &,,, yr,,n,,,/,~c .,,,,,,,., ',,,, at 301-493-0290;
only $10. Certificates can be ,,.?

Actiue Nember
order individually or payment 1977 fax: 301-493-0208;
can be added to your {Y ,,0r4r,r!,y ! / , h s~,,,,P,/!/c~,,c ,,,,?.$ email: membersaasprs .org.
JL)L , <i/!h;., ;., L.;.
Membership Dues. -

PE&RS January 1996 83

You might also like