05.11.2013 Aufrufe

Inkrementelle Akquisition von 3D-Objektmodellen - Institut für ...

Inkrementelle Akquisition von 3D-Objektmodellen - Institut für ...

Inkrementelle Akquisition von 3D-Objektmodellen - Institut für ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

IR-INI 2006–01, c○ 2006 <strong>Institut</strong> <strong>für</strong> Neuroinformatik, Ruhr-Universität Bochum, FRG 53<br />

• je m Matrizen U j = ∑ i AT ij A ij und U ∗ j = U j + λI<br />

• je n Matrizen V i = ∑ j BT ij B ij und V ∗<br />

i<br />

= V i + λI<br />

• nm Matrizen W ij = A T ij B ij<br />

• nm Matrizen Y ij = W ij V ∗−1<br />

i<br />

• m Vektoren ɛ aj<br />

= ∑ i AT ij ɛ ij<br />

• n Vektoren ɛ bi = ∑ j BT ij ɛ ij<br />

Wir können dann die Matrix S aus (8.16) berechnen, indem wir sie als m × m Block-Matrix<br />

definieren mit Blöcken<br />

{<br />

− ∑ i<br />

S jk =<br />

Y ijWik<br />

T <strong>für</strong> j ≠ k<br />

− ∑ i Y ijWik T + U j<br />

∗ <strong>für</strong> j = k<br />

Die rechte Seite der Gleichung stellen wir dar durch einen Vektor e = (e T 1 , ..., e T m) T mit<br />

e j = −ɛ aj + ∑ i<br />

Y ij ɛ bi<br />

Wir können dann die Gleichung<br />

S∆ a = e<br />

nach ∆ a = (∆ T a 1<br />

, ..., ∆ T a m<br />

) T lösen.<br />

Anschließend berechnen wir ∆ b = (∆ T b 1<br />

, ..., ∆ T b m<br />

) T durch<br />

∆ bi<br />

= V ∗−1<br />

i (−ɛ bi − ∑ j<br />

W T ij ∆ aj )<br />

Wir sind völlig analog zu Abschnitt 8.2.3.1 vorgegangen. Das am Ende berechnete ∆ = (∆ T a , ∆ T b )T<br />

ist identisch. Anstatt jedoch wie zuvor mit sehr großen Matrizen zu rechnen, wurden hier jeweils<br />

nur die Blöcke berechnet, die tatsächlich Daten enthalten. Dies bringt enorme Verbesserungen der<br />

Laufzeit mit sich.<br />

Sollte der Rückprojektionsfehler e(p ′ ) = e(p+∆) gegenüber e(p) nicht verringert worden sein, wird<br />

λ erhöht und wir berechnen damit ein neues ∆. Alle <strong>von</strong> λ unabhängigen Werte, also alle A ij , B ij ,<br />

ɛ ij , U j , V i , W ij , ɛ aj und ɛ bi , müssen dabei nicht neu berechnet werden. Nach einer erfolgreichen<br />

Iteration, also einer Verminderung des Rückprojektionsfehlers, wird der neue Parametervektor<br />

p ′ = p + ∆ übernommen und λ <strong>für</strong> den nächsten Iterationsschritt gesenkt. Wir iterieren, bis der<br />

Rückprojektionsfehler in einem Minimum konvergiert.<br />

Für eine ausführlichere Erläuterung des Algorithmus siehe [HZ04].<br />

8.3 Optimierung durch einen evolutionären Algorithmus<br />

Vor allem bei einer schlechten initialen Rekonstruktion hat das Bundle Adjustment den Nachteil,<br />

dass der Rückprojektionsfehler nur bis zu einem lokalen Minimum verringert wird, das meistens<br />

weit entfernt <strong>von</strong> einer optimalen Lösung ist. Daher lohnt es sich, auch eine alternative Methode<br />

zur Optimierung zu berücksichtigen, die lokale Minima überwinden kann – einen evolutionären<br />

Algorithmus.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!