t.u

advertisement
A FORTRAB BWCX
ADJUS~NT
P.ROGlWl BY INDEPENDEN'l' JroDElS
.ABD IE.AS! SQUARES SUIT.ABI.E FOR ARDITIURT BWCI<S J.ND SUA.LL COMPO'l'ERS-
JOSE EDUARDO JULIA
'the treatMnt
o~
thie progru is that fd
the .A.Dblock with iterations betnen planiae1iz7 and alt.iaet:l7 aJ'lll with direct solution td t.u reduoed: noraal equations,vhl.oh are solved b7 th• Gauss
elimination ~chnique with aD optimiaation oonsiatiQg not in ainimizin&
the baz:d vid.th but 1n the skipping of all zeros.
The progru onn edjuat 1lllT VPa of' blook rogr..a.rdless ~ shape,anrlap am
points distribution.It hD.s onl.7 900 Fortran instructions vhich require
elmoat 30 K bytes in llB IBll 370 ooll:;nte.r .The working area requirements
depeni on the bl~ck sizo(50 models need 10 K bytes and 200 aod.el• requi:H
40 K b,.Ws} 1 Thua for rela:tive~ ls:rge blooka am. ema.ll computers,there is
not even need of progru segmentation or speoie.l techniques o'f dyn.D.l!dq
storage tor the vorkin& area. This aida holR'We:r 1fill be moesea.:ey"' either
tdth v•ey large blocks or T8Z7 small. oomputera 9 ~ data. ha.ndl1ng is extreMly easy rtho output ot the plotting instrumnt ca be usoci direotly as
input ot the prograa. Some edjut.cl bloolta of real. vork are 1nol~o4 ...
JOSE EDUARD 0
.lvenida DIDEPENDENCIA 18oo
Insti tuto de GEWESIJ,..
Faot~l'tsd
4·000
S.N. do 'l'UCUMAJT
de CIENCIJ.S EX.lCT.AS-1Jnivere1da4 Bacionel de
WCUMAN
D•oobv 29th , 1979
359.
l.Introduotion
Our Institute could develop in 1977 a bil.ock adjustment program by
leaat squares and iDiepement models(3) ,which was able to handle rela-
tively irregular blocks •
Later,in 1978,a second prog:ram(4)based on Anblock_formulation and
Gauss Seidel procedure ,sui table :for blocks of arbitrary shape and overlap was completed. The main feature of this program was that the solved
system was that of the Reduced Normal Equations and not that of the Normal Equations as it is the case in the solutions given by Or,hange (Anblock) and Masson d'Autum (Bundles) deimribed in (1) ani (6). The conve]).
gence was good:Starting with good approximate values (previous strip
formation),less than 5 iterations were enough.Jstartit~.g with approximate
values sensibly worse than those obtained with strip formation,lO iterations sufficedJstarting with arbitrary approximate values (all of them
equal to zero,for instanoe),40 iterations were needed. With too scarce
ground control the number of iterations was somewhat greater .Finally in july 1979 a program sui 'b.ble for large arbitrary blocks
and small computers based on a direct solution of the reduced normal
equationa could be completed. This program,whose name is OOBLO (for Oompensacidn en Bloque ),is based on the Anblock solution with iterations
between planimetry and altimetry and it will be described in this paper.
2.Employed Algorithm
The mathematical treatment :for the planimetry is that of Anblock as
presented in (1). For the altimetry similar formulas were developed by
the author.
2.1. Formation of the Reduced Normal Equations
The block of Fig.l will give rise to a normal equations system(Fig.
2). Starting fro• this system one can obtain the so called "reduced
normal equations system ttJ Fig.) shows tMs system :for the case in
which the vector Xx containing the unknown poin~ coordinates has been
eliminated and the models hsve been numbered according to flight direotion(the vector Xt in normal equations will be called simply X in the
reduced normal equations system ).
In Fig.),the submatrixes N will be of 4 by 4 in planime try and of
3 by 3 in al timetry,and the subvectors Xl, X2, etc ., whioh contain the
orientatation parameters of models,will be of 4 by 1 in planimetry and
3 by 1 in altimetry • The iDiependent terms vector R is also subdivided
into subvectors R1, ....• ,R5, in the same w~.
!he :tormation of the reduced normal equations ill! done in the follewd.ng w~ a
Tlie J1rOgram takes a point,establishes the models to which it belongs am computes the contributions to the corresponding submatrixes.
360.
101
102
...,o'
Fig.l
SIMETRICA
Fig. 2
36:1..
103
Nu Nl2 Nt3 N14
~U5
N22 0 ~4 Nm
N33 N3~ 0
SIMETRICA
N~4
N4&
N&a
Fig.)
The point 303, ~or instance, contributes to form submatrixes H11,
N12, N14, N15, N22, N24 , N25, N44, N45, N55• Only one of these submatrixea is in oore memory. Once the contribution is computed, it is
trans~ered to external storage. The same process is repeated for all
the uDknown points participating in the adjustment and their contributions are added to the already stored ones.
2.2. Solution of the Reduced Normal Equations
We shall consider the block of Fig.4, which givea rise to the reduced normal equations system represented in Fig.5 •
NII
N•
NT
N2t
N23
N
NT
n
N3J
NH
N35
NT
NT
34
NH
N_.,
NT
NT
N:II
lr
H
N1e
36
T
N"
!~
41
...
N47
N_.s
NI I
NT
N,,
NT
-47
NT
NT
17 N77 N78
T
N1e NN
...
362.
N_.s
T
Nse
N,7
Unlike what it is done in other methods (2), no attempt is ma:le
here to minimize the band width, and the solution is basically the
Gauss elimination ani back susti tution method, employing submatri:us as
computation units.
In spite of the large bandwidths,which could be present, the procedure is efficient becauses
1) One works only with half part of the matrix because of its' symmetry.
2) In computing the sucoesive reductions,all matrix products,having a zero matrix as one of its factors,are omitted. Thus, in
the first reduction of the system of Fig.5,in substracting
from the seoom "row" the .first ''row" premul tiplied by Nl2
only the following computations will be performed:
Nit '
T -1
N22- Nl2Nll
Nl2 f
T
-1
O - Nl2 Nll Nl6
The submatrixes N am N nll remain unchanged,ard the compu23
24
tations:
T
-1
N23- Nl2 Nll.O
T
-1
J N24- Nl2 Nll • 0
are skipped.
In the same wey the su"bstraction,third "row''minus first "row''
premultiplied by N T N - 1 is also skipped because N T • o, and
13
11
13
the third "row'' remains thus unchanged.
In this w~ much computer tfime is saved and a good efficiency
is attained.
3. Type of blooks to be admitted by COBLO
Fig.6
363.
There are no restrictions regarding the shape and overlap of the
block • The strips can have completely different scales azd posi tiona •
Thus,it is possible to adjust simultaneously b:l.Ooks · f'ormed by two or
more indepement flights , (Fig.6). The minimun blOck size is one model .
The .JlUDlber of unknown points per model partici.pating in the adjustment is arbitrary am oan be rather large because they are stored externally. Each point has an identification number, by me ans of which the
program establishes the ties. The numbering of tie and terrain points
is arbitrary. The perspective oentre83 act as additional tie points in
altime try.
COBLO admits ground control points in arbitrary positions and their
number per model can be also large.
The ground control points can be planial time trio, a1 timetric or planime tric.
No initial approximate values f'or the unknowns are required.
Some minor changes will be made in the future to introduce the use
of points along shorelines •
4• Data handling
The data handling is very easy because the plotting instrume nt output can be used directly as input of COBLO. Eaoh model:. card deck is
formed by the oardao of all model points ( one card per point ) grouped
arbitrarily. Precedi.ng each model deck there is one card containing the
model coordinates of the two perspective centres and information about
the quantity of tie and ground control points.
The aodel ·deoka thus formed are grouped sequentially (The same order
of measure•ent at the plotting instrument) to form the strip deck.
All strip decks are then grouped in an arbitrary wzcy to form the
final data deck. Figure 7 shows one vq to form the data deck of block
ot Fig.6. Before each strip deck a card should be placed indicating
hov m~ models the strip has.-
1 23 o4 5 G 1 12 3-4 5 1 2 3 4 56 7 12 3 4 561 21 2 3 4 5 57
STRIP 1
t
STR IP 3
STRIP
STRI P 4
STRI P
5
t
STRIP 7
ST RI P 6
2
364.
STRI P
e
Figure 8 shows a fictitious block of 6 models: 3 strips of 2 models
each. Supposing that all models were measured ~th the same base,the
scale of the third strip will differ strong~ from the other two (the
factor is almost 3 ).
Fig.8
The simulated terrain is somewhat montaneous ani all models were
taken out fro their correct positions to prepare the fictitious input
data,by applying 3 translations and 3 rotations (orthogonal transformations). As no simulated errors were introduced, the final results of the
adjustment were,naturally,exact.
Figure 9 is the input data of block of Fig.B. The first oard contains information about the number of iterations (3 for montaneous
terrainJ 2 for flat terrain) and the wei~ to be assigned to ground
control. The second card contains the block size (number of models) and
the number of strips. After these two specification cards,there
follows the above described data deck.
Figure 10 is the output of this example (the results of two iter ations are shown). Each line contains (from left to right ): the identification number of the point, its three adjusted coordinates and the discrepancies between these last coordinates and the transformed coordinates of the same point in all models in which it appears. I f the point
happens to be in more than 4 models,a second line will be necessary to
print all disorpancies (this is the case with point 202 which appears
in 6 models).
The treated example was included to show the data handling,but it
also shows how COBLO can process blocks with cross strips.
365.
7
•
"
(r~.
0
311
• n
} I' Ll.
llG
21:;.
h1~
; ~If • a
fo <o
._ l
j
z r~
3 . ': ._ 7
. I:< l 7
7
c.. .. .
1.- J.
;' ~ 4
.c..o~ .
l ; l
J Ct, •
~:!•J; ,.
u:Jo;,
'""'" . 1 "' 2
1 G2 • R,_,o4
.. 97P
J07,.n(j o
4QQ. n •·~
J(!Q.
2f. O
5Q 4 ,.f. 77
7 ••: . • 1 ·'1
1"
~
6\ll..l~l
1 ~·. ? 11-1
2 (1 2,.
7
4
~
14 9 .t- 11 7
7 (l F . 214
"02. i'j. '?
2t 1 l . 0 ' 1 F\
7 117. 774
lf· o·q"" n
? O l,. r' ?t;,
e;r f.•") "l}
T.
7
t- C 1 . 7'-J?
71 14
~ '"'~ . 73?
H)~.473
21 •} . 7 '- 3
1 o~
201. 1 ?t>
21 r..
.n,. ..,
1~
3 ..
(\I-"'
0
21 Q. 1 hb
loQ
h(l .... "' '"' ~
t- 7 . l ? to
611.
6!;.~-<?1
l~t'.,7f.
4(1f>.'
.. id: 2
4}1,. 7hP
7 (1. (1 .... 7
t-.':1 .. 4"':1.)
3"' 7 .. l 7,..,
4f. (l . 4 o4 F\
t-S . 1 P7
2~
73Q ,. 7R ~>,
1~7 ., 1J4}
f;oiQ.Qt,p
1G 1. 0"' 1
:_:arH,, ,.
3t..}.3~8
;'h f"l,. £-77
1 2 .. , '·~
7') .f'"ll
~1-::~
•
? 7;,:
4
° tl . .. 1 ~
::'!. Q) R
1P3.? ~ 7
: w:a.l'"'~
3~H
3 Q'f
~.,
20~.277
1" 1
1 ,.. ...
Lo l R.
"1':-.
~hF<
4 ( lb .
0
300 ..
3G':>,.O?'-
tn ?
4
4113 . -'<Gh
Jl.lt.•• 1"-
5(""13 . ,;.' .. 4
o4 (' 5 . 212
J...;l, . 5 7 ;'
4 (- ":1 • .'.-:1.4
7 " 2 C7 P.
l c.: .. ?I 7
1 OJ,. Cfh?,
?1•~
tn
"(''"-. 7'l.4
1!'1
1t..o ~ - . ...... 7
l · •1. 70.L.
'- '> L t ?;
21-'1
? l ~ . 0 'l.~
) lo}
f. 1L
~ (,1~ ·"'"'7
I , <J J.t 0
('I .., ..
1n3
702
?03
..
3~!-l
1 ~-H, r n c
;-c. ... 312
ltJ 3 ,. 7.,,..,
i' II A;M,7
39 3,. 1-"'2
2 ~"'. ".i ~7
7ll.9 h R
'7"l, .......
5 ~ 7 .. 7C,,..,
t.; . ?? "'
J2n fl . f' r'l0
lH"'I(l ,.(lnr,
}nf'o.O~ (}
.... .. . . "17
lrl fi: l.fl(IO
?47.44)-1
}<.,1.
zn 1. p-:~ ~
34o4 0 FI';-7
19 0 ,.77~
1-0? . l 11 7
:9l' . 73 . . .
?'- 1. ~I) 1
i <J2. 4h ~
t-or· ~
3 ..
~ . 'l, <;
4'.>4 . ". {\4
1Q
....
3Q.t,.
Q
(' 4
..
">~4
')~ :..
077
'>O~.o·H
7
z.c, 1
40':1. "'h4
lfl?
7. .... )-1
7 '1.7]1
l
~{"o"l,., :I
F<Q
fl
1 b~
lf, R
7 ['. 7"l.lo
~Lq
~~4.J.1?4
341).71=\4
2':> ... 0 2?
74 •! R(l
hf.. 044
341 ..
0
)fl r' fl.(l n n
2r. n0 .f' "("l
} I"'; OJ . ('n n
}HOr'J .. Ofl r)
}flf'IV.,O C'I {"l
7 ~ . l.f t- 0
3';~.
?(l C,
24'")0.000
74.P""
1, • 041
7?.412
zo;:; .-; ?-..,
~c~.f\4A
1 ... t. ? 2
1 t .• f-.OR
t- 4 .. kr'l7
1? . l ,..,:~,
74.., .,(1?0
l q ·l. 7L 7
7 r• '-
lflf"\).{1!10
?-QP.4nf'
.4o~
o4C'I?.
~Ql.
1 £ nf"l ~ ~l' ''
~oot.113
Input data
y
X
J "-1111
,'II
77tlfl,nl
z
1 17
01
-. 1 h
.rq
-.nR
-.no:;
. nq
~ ~ n..n~
- . fl?
- .) n
17'1'1.~ -,
n.nn
-.tn
'lr"l4. qq
n .nn
.. tn
-. 1 '·
1
?\•p).q,,
tn tn .n 1
• "''
,n<
n,nn
)llll/1 •''"'
\ 1 '' ''· ''"
)4on,n?
1'•n 1 1,ilt.
-.to
- .. 71
- .n?
- .nt
n .nn
-.n"\
I P I?.
0
}PIHl, ')0,
1
""n· 11,.,'·
l~nn.
?nnn .
~
\1-fHI.O'?
ll ' l'l,'lfo
lllf)(l ,,,.,
? ? no
. n~o
.
I f ''''• Q?
fl'
fl'1 ......
}1)11 ....
-.71
.11
- .. rq
-.n?
n.nn
-. 7 R
.n 1
- . ?7
-.n~
f"),f\0
- . lJ
)01'··'17
o.nn
n,nn
• ''•
n.on
.nq
n.oo
o.oo
,nlo
,01
.nt
n ,. rH')
() . On
n.nn
0
' 1f1
- . 1l,
.14
I T ''' '· fll
)llfl .. ,fl()
n.on
1 11'1 7. CJq
on
-,nq
0.011
n .. nfJ
n.no
fl.n rl
TH
Jlu•J,'lf
}(11)!0 0 '1(1
n.fll)
flollll
}nnf, , 'l Q
-. 0'•
n. no
n.nn
n . on
- .nt
n.nn . n . nn
n.no 0,011
o,./l ll n .nn
n.nn n ·" ''
0
1~
71 11 11.
'·II
I ~I HI ·'·7
l ; nn. '•'•
7f'..()ll,
'·1
'1'14,
trJt7.nt
') ) ( H I
(1L
Jnt7.nt
,,~
)l}ln.nt
I f 'l'l.
tt,•J•I . 'J'f
7 7nn .rw
1 7 '1'1
• ' I'~
? ,• ru1 . no
I.., C!•l. 99
lf\111),00
I kno . qo
1 7 Yll,
~9
2ll ' ''' · Oil
770CJ . I)IJ
71\fHlo {JO
174'1. "'19
1 ., '1'/ • Ql/
ll'JQ,(}q
17 O)q
l~Q~,qq
o
Q'1
1111 •••
7"-llll,J?.
0
..,..,~,.
"lQ
n. nn
1 1111'· ·
11'1
n.nn
n.nn
IJI)r\ 0 ' IQ
f}tJ/, . 1}'1
n .. nn
n.nn
'lQ
(1\
17'/l.J,'lq
?loflfl
0
n.nr1
n.rw
n. rw
11,.11'1
n , nn
1),(11)
(1,011
n.nn
o. rHJ
n.,11n
n,.r1n
n.r111
n,ru1
n
n.nn
n,on
o.on
n.C'Io
n .. on
n. l"l
n.nn
n .nfl
n,nn
n.nn
n.nn
n. nn
o.nn
O,fll}
n,nr1
n.nn
n.no
n.nn
o.nn
n.nn
n,nrt
o,nn
o. on
n.nn
I''"'·
n,nn
n.no
n.nn
n.no
n . nn
n.no
n.nn
n,no
n.nn
n. on
n.nn
.n I
77no,nn
n . nn
n,nn
n.nn
n.nn
tnn7 . no
llllf,. 1HI
1 rl) '"'· QQ
.Jntn. ""
fig . lO
n.no
fl.nn
n.nn
n.nn
n.nn
• n1
nn
n.nn
n.n••
o.nn
)1107,1"1'1
o ,nn
11.
11.nn
o.ruJ
n.nn
lOI 1o.lJil
·""
(/.,(1()
n.nn
)llf)'•·'lll
- . n~
0.'10
ll,f)ll
}1.')'1, tJQ
'J'I'I, 'IR
n . r1n
n. n"
'l.nn
71'110. n p
71.tlf1
n.nn
'''11."'1
1':\ ' l'l , ' I<J
1 Ann. nn
JJQQ 0 1J'l
n.no
n .nrl
Jntn.nn
)IH1fo, 1lll
27nn . no
n.fln
n ,no
n.nn
n.nn
Qt)
.on
- . 01
(1,.fHJ
o.nn
n.on
n.no
lRI)("',(l(l
- . Pl
.II\
-,11~
o?l
- .. 10
, Ol
• 01
(' oUO
O · OC'I
(l,.f}/1
n . nn
f)')q. (JJ:l
771111
,01
-,o 1
n ,r1n
.n 1
n.r1n
) ":\'JII,IJ9
11'1' 1,
n.nn
O,lln
• l?.
- . 1~
n. nn
)011'1,. '1'}
1n 1 "'.nr1
)Ill <t. nn
7onn.oo
-.l.'
'1'")
'l'l}
tn In.n 1
? )I) I I . , ...
1 14 •1, ""
Jll!)f1
,07
.1 C1
-·''
• i' A
l4nn. l l
l41lfl. ')(,
7~
-.nq
• "'·
.J 'l
)llflfi,J.,
\lollfl 0
..
o.nn
n.nn
n . nn
n,nn
n.no
Output
366.
n ., urt
n. n"
n . no
• '~' J
n.nn
n . on
n.11n
,-ncr'
•J
j .
2- uerc.floY)
5. Gross error detection
As central memory requirements are not high, it oould be inexpensive
to use COBLO for pre~ous strip formation and gross errors detection.
This stage is al.mo& unavoidable when working wd tlL large blocks and it
turns out to be btperativ.e in Bundles Adjustment for f1Diin6 good initial
values for the unknowns (5 ). The printing of the discrepancies mentioned
in the last paragraph; am shown in Fig.lO will be of great help at this
stage.
6. Central Memory requirements
am
CPU times
Regardin& these two items j i is dif'fioul t to compare our obsolete
IBM 1620 oomPiter w4. tlt modern ones.
A week spent b,- the author in Buenos Aires last december vas hardly
enough to verify the FORTRAN IV version and to proce sa some felt7 bil.ooks
( thougtb translating FOR'mAH II into FORTRAN IV seems to be simple ,it is
an awkward task,apeoially i f direct access instructions are present).
Nevertheless,some interesting conclusions oould be drawn 1
1) The program has only 900 FORTRAN instructions which require almost
30 K bytes in an IBM 370/125 computer.
2) The working area requirements depeDi ,for the time being,on the b:Lock
sizet 50 models need 10 K bytes,lOO models need 20 K bytes and 200
models need 40 K bytes • Wi tlt nry large blocks or very small comPIters speoial i7namic storage techldiquea; wilL be necessary.
The program has been recently :resUdied and it seems not to be diffioul t to store externally all inte&ft!. variable arr~s whioh are
still in central memory. Thus,the central memory requirementawill
be iDiepeDient of the bil.ock sima an:l will not surpass 5 If. bytes.
3) A proof carried out with a block of 20 models,rlth. 3 plan height
iterations resulted in a CPU time of 18 secoms per model. According
to information obtained froa IBM people in 'l'ucum4n,an IBM 370/ 125
is about 8 times slo1118r: than an IBM 370/145• Thus,the abov.e mentiioned
proof would take a CPU time of only 2 seoords per sodel in an
IBM 370/145, which is considered a good value i t oompared with CPU
times giv.en in (7) ard ( 8).
7. Conclusion
The last version of our block adjustment prograa COBLO seems to be
promising because it can handle ,in small compu.ters,any type of block
regardless of shape,overlap and point distribution.
Several blocka; of fictitious aDi real data were already proceslled
w1 th this program aDi a good performance was observed.
As most of the proofs were carried out at our old IBM 1620computer,
only small blocks were adjustecl beoauee the machine times in this; comPlter are extremely large for blooka of more than 20 models(i t should be
born in miDi that CPU time in an IBM 1620 oan be aore than 400 tiaes
367.
greater than CPU time in an IBM 370/145).
Fortunately within few: months and a.f'ter many years of' hard work,our
old IBM 1620 rill give w~ to a v.ery modern ani powerful computer re cently acquired by our University. Then, we shall be able to carry out
proof's wi tlt large blbaka and to perform some research on subjects like,
gross error detection,control saving by using cross strips,blocks wit~
strips dif'f'e:r.ilag strongly in scale ,etc.
REFERENCES;
(1) Jordan/Eggert/Kneissl: "Hanbuch der Vermessungskunde". Band III a/3.
Stuttgart 1972.
(2) Ackermann F.,Ebner H.und Klein H.: 11 Ein Programm-Paket f'1lr die Aerotriangulation mit Unabhlngi.gen Modellen". Bildmessung u:nd
Luftbildwesen. Heft 4• 1970 •
(3) Julia J.E. :'' Compensaci6n en B:n.oque Rigurosa por modelos irdependientes ". Revista Ca.rtografioa IPGH N° 33 .Junio 1968.
(4) Juli4 J.E. :" Un Programa Fortran de compensaci6n en bloque por modelos independientes apto para bloques completamente arbitrarios " • Clttedra de Fotogrametria. Instituto de Geodesia.Universidad Nacional de Tuoum!n.
(5) Tewinkel a. c. : II A Bundles Method of block Aerotriangulation I I .
Revista Cartografica. IPGH N°26 Junio 1976.
(6) Kubik J. : " Survey of Methods in analytical block triangulation.
ITC Publication, A 39.
(7) Schrldefsky-Ackermann: " Pb.otogrammetrie n • B.a. Teubner, Stuttgart, 1976.
( 8) Klein H. : " Block Adjustment programma for minicomputers " Naohrichten aus dem Karten-und Vermessungswesen. Institut ~
AngelfEI.M te Geodasie. Frankfurt, 1978.
368.
Download