SlideShare ist ein Scribd-Unternehmen logo
1 von 124
Active Appearance Models
      with Occlusion
    Ralph Gross, Iain Matthews and Simon Baker


                  präsentiert von: Sebastian Hafner
Active Appearance Models
      with Occlusion
    Ralph Gross, Iain Matthews and Simon Baker


                  präsentiert von: Sebastian Hafner
2
Was ist überhaupt
“Überdeckung”?




            2
Was ist überhaupt
“Überdeckung”?
•   schlechte Übersetzung für “occlusion”




                                 2
Was ist überhaupt
“Überdeckung”?
•   schlechte Übersetzung für “occlusion”

•   Selbstüberdeckung




                                 2
Was ist überhaupt
“Überdeckung”?
•   schlechte Übersetzung für “occlusion”

•   Selbstüberdeckung

    •   Körperteile




                                 2
Was ist überhaupt
“Überdeckung”?
•   schlechte Übersetzung für “occlusion”

•   Selbstüberdeckung

    •   Körperteile

    •   Kopfbewegung




                                 2
Was ist überhaupt
“Überdeckung”?
•   schlechte Übersetzung für “occlusion”

•   Selbstüberdeckung

    •   Körperteile

    •   Kopfbewegung

•   Überdeckung durch andere Gegenstände


                                 2
Wie wirkt sich
Bewegung aus?




      3
Überblick




    4
Überblick
• Grundlagen für AAM




                  4
Überblick
• Grundlagen für AAM
 • Anpassungen für Überdeckung




                  4
Überblick
• Grundlagen für AAM
 • Anpassungen für Überdeckung
• Experimente



                  4
Überblick
• Grundlagen für AAM
 • Anpassungen für Überdeckung
• Experimente
 • Künstliche Überdeckung


                  4
Überblick
• Grundlagen für AAM
 • Anpassungen für Überdeckung
• Experimente
 • Künstliche Überdeckung
 • Natürliche Überdeckung

                  4
Überblick
• Grundlagen für AAM
 • Anpassungen für Überdeckung
• Experimente
 • Künstliche Überdeckung
 • Natürliche Überdeckung
 • verschiedene Algorithmen
                  4
AAM erstellen




      5
AAM erstellen
• Form




           5
AAM erstellen
• Form
 • Markante Punkte




                     5
AAM erstellen
• Form
 • Markante Punkte
 • handmarkiert



                     5
AAM erstellen
• Form
 • Markante Punkte
 • handmarkiert



                     5
Form




 6
Form
           n
s = s0 +         pi si
           i=1




       6
Form
              n
s = s0 +            pi si
              i=1
          s: Form
      s0: Grundform
    si: Formvektoren
   pi: Formparameter
          6
Basisform s0




     7
Basisform s0




     7
Basisform s0




     7
Basisform s0




     7
Basisform s0




     8
Basisform s0
1. Erstelle ein Netz s0 auf jedem Trainingsbild,
   das handmarkierte Netz sei s




                           8
Basisform s0
1. Erstelle ein Netz s0 auf jedem Trainingsbild,
   das handmarkierte Netz sei s

2. Wiederhole nun bis s0 konvergiert:




                           8
Basisform s0
1. Erstelle ein Netz s0 auf jedem Trainingsbild,
   das handmarkierte Netz sei s

2. Wiederhole nun bis s0 konvergiert:

  a. Passe s an s0 mit Hilfe von zweidimensionalen
     Ähnlichkeitsumformungen an.




                           8
Basisform s0
1. Erstelle ein Netz s0 auf jedem Trainingsbild,
   das handmarkierte Netz sei s

2. Wiederhole nun bis s0 konvergiert:

  a. Passe s an s0 mit Hilfe von zweidimensionalen
     Ähnlichkeitsumformungen an.

  b. Setze s0 auf den Mittelwert aller Netze s


                           8
Basisform s0
1. Erstelle ein Netz s0 auf jedem Trainingsbild,
   das handmarkierte Netz sei s

2. Wiederhole nun bis s0 konvergiert:

  a. Passe s an s0 mit Hilfe von zweidimensionalen
     Ähnlichkeitsumformungen an.

  b. Setze s0 auf den Mittelwert aller Netze s
    Nur wenn 50% der Punkte sichtbar sind !
                           8
Berechnung der
Formvektoren si




       9
Berechnung der
        Formvektoren si
• Passe die sichtbaren Dreiecke von s in das
                                     i
  Basisnetz s0 ein




                        9
Berechnung der
        Formvektoren si
• Passe die sichtbaren Dreiecke von s in das
                                     i
  Basisnetz s0 ein
• Ziehe s0   von jedem si ab




                         9
Berechnung der
        Formvektoren si
• Passe die sichtbaren Dreiecke von s in das
                                     i
  Basisnetz s0 ein
• Ziehe s von jedem s ab
         0             i

• Benutze “PCA mit fehlenden Daten”


                           9
Berechnung der
        Formvektoren si
• Passe die sichtbaren Dreiecke von s in das
                                     i
  Basisnetz s0 ein
• Ziehe s von jedem s ab
         0             i

• Benutze “PCA mit fehlenden Daten”
• Verwende die othonormalsierten Eigenvektoren
  mit dem größten Eigenwert als si


                           9
AAM erstellen




      10
AAM erstellen
• Darstellung, umfasst:




                     10
AAM erstellen
• Darstellung, umfasst:
 • alle Pixel innerhalb der Form s
                                 0




                     10
AAM erstellen
• Darstellung, umfasst:
 • alle Pixel innerhalb der Form s
                                 0

 • faktisch: ein Bild!



                     10
AAM erstellen
• Darstellung, umfasst:
 • alle Pixel innerhalb der Form s
                                 0

 • faktisch: ein Bild!



                     10
Darstellung




     11
Darstellung
                  m
A(x) = A0 (x) +         λi Ai (x)
                  i=1




            11
Darstellung
                        m
A(x) = A0 (x) +               λi Ai (x)
                       i=1

           A(x): Darstellung
        A0(x): Basisdarstellung
       Ai(x): Darstellungsbilder
      λi: Darstellungsparameter
                 11
Berechnung der
    Darstellungsbilder Ai
• Passe A an A an
         i     0

• Ziehe A von jedem A ab
          0            i

• Benutze “PCA mit fehlenden Daten”
• Verwende die othonormalisierten Eigenvektoren
  mit dem größten Eigenwert als Ai


                        12
Experiment




    13
Experiment




    13
Experiment

• Früher verwendete Bilder werden
  künstlich überdeckt.




            13
Experiment

• Früher verwendete Bilder werden
  künstlich überdeckt.
• Neue Bildsequenzen mit
  natürlicher Überdeckung



            13
Künstliche Überdeckung




          14
Künstliche Überdeckung




         Original

            14
Künstliche Überdeckung




10% Überdeckung   Original

                     14
Künstliche Überdeckung




10% Überdeckung   Original   50% Überdeckung

                     14
Basisnetzabstand
  Pixelabstand
                                                 0.50




                  durchschn. Pixelabstand [px]
 zwischen den
                                                 0.40
  Netzen aus
                                                 0.30
überdeckten und
                                                 0.20
 überdeckungs-
                                                 0.10
      freien
 Bildsequenzen                                      0.05   0.15      0.25   0.35   0.45
                                                                  % Überdeckung




                                                    15
Basisnetzabstand
  Pixelabstand
                                                 0.50




                  durchschn. Pixelabstand [px]
 zwischen den
                                                 0.40
  Netzen aus
                                                 0.30
überdeckten und
                                                 0.20
 überdeckungs-
                                                 0.10
      freien
 Bildsequenzen                                      0.05   0.15      0.25   0.35   0.45
                                                                  % Überdeckung


 Bleibt unter ½ px für bis zu 50% Überdeckung!
                                                    15
Formenergie Überlappung




           16
Formenergie Überlappung

     1                         u )T
                                                 2
SE =                         (si         o
                                        sj
     n        i        j


 siu: Formvektoren für überdeckungsfreie Daten
      sjo: Formvektoren für überdeckte Daten

                      16
Formenergie Überlappung
  zwischen den                               1.00




                  shape energy overlap [%]
  Formen aus                                 0.95
überdeckten und
                                             0.90
 überdeckungs-
     freien                                  0.85

 Bildsequenzen
                                                0.05   0.15      0.25   0.35   0.45
                                                              % Überdeckung




                                                17
Formenergie Überlappung
  zwischen den                               1.00




                  shape energy overlap [%]
  Formen aus                                 0.95
überdeckten und
                                             0.90
 überdeckungs-
     freien                                  0.85

 Bildsequenzen
                                                0.05   0.15      0.25   0.35   0.45
                                                              % Überdeckung


  Bleibt über 95% für bis zu 45% Überdeckung!
                                                17
Einpassen von AAMs
  mit Überdeckung




        18
Einpassen von AAMs
   mit Überdeckung
• Wie geht das?
• Minimierung des Quadratsummenfehlers



                   18
Einpassen von AAMs
         mit Überdeckung
   • Wie geht das?
   • Minimierung des Quadratsummenfehlers
                  m                               2

       A0 (x) +         λi Ai (x) − I (W(x; p))
x∈s0              i=1


                          18
Algorithmen




     19
Algorithmen
• Project-Out Algorithmus
 • vorher bereits besprochen




                   19
Algorithmen
• Project-Out Algorithmus
 • vorher bereits besprochen
• Robust-Fitting Algorithmus
 • ineffizient


                   19
Algorithmen
• Project-Out Algorithmus
 • vorher bereits besprochen
• Robust-Fitting Algorithmus
 • ineffizient
• Efficient Robust Normalization Algorithmus
 • schnell, performant
                    19
Project-Out Algorithmus




           20
Project-Out Algorithmus
• Vorberechnungen




                    20
Project-Out Algorithmus
• Vorberechnungen
   • Gradientenbildung der Basisdarstellung ∇A
                                             0




                       20
Project-Out Algorithmus
• Vorberechnungen
   • Gradientenbildung der Basisdarstellung ∇A0

   • Berechnung der Jacobi Matrix des Warp in (x;0)



                       20
Project-Out Algorithmus
• Vorberechnungen
   • Gradientenbildung der Basisdarstellung ∇A0

   • Berechnung der Jacobi Matrix des Warp in (x;0)
   • Berechnung des Gradientenbilds SD (x)
                                        ic




                       20
Project-Out Algorithmus
• Vorberechnungen
   • Gradientenbildung der Basisdarstellung ∇A 0

   • Berechnung der Jacobi Matrix des Warp in (x;0)
   • Berechnung des Gradientenbilds SD (x)ic

   • “Project out” Darstellung aus SD (x)
                                     ic




                       20
Project-Out Algorithmus
• Vorberechnungen
   • Gradientenbildung der Basisdarstellung ∇A 0

   • Berechnung der Jacobi Matrix des Warp in (x;0)
   • Berechnung des Gradientenbilds SD (x)ic

   • “Project out” Darstellung aus SD (x)
                                     ic

   • Berechnung der Hesse-Matrix H  po


                       20
Project-Out Algorithmus
• Iteration
    • Warp I mit W(x;p) um I(W(x;p)) zu erhalten
    • Berechnung des Fehlerbilds
      E(x) = I(W(x;p)) - A0(x)

   •  Berechne Σx SDTpo(x) E(x)
   • Aktualisiere den Warp W(x;p)
      ← W(x;p) ❍ W(x;Δp)

                         21
Project-Out algorithm
• Berechnung der Darstellungsparameter

λi =          Ai (x) · [I (W(x; p)) − A0 (x)]
       x∈s0




                       22
Robust fitting Algorithmus

                    m                               2

         A0 (x) +         λi Ai (x) − I (W(x; p))
  x∈s0              i=1




                             23
Robust fitting Algorithmus

                   m                               2

        A0 (x) +         λi Ai (x) − I (W(x; p))       ;σ
 x∈s0              i=1



    ς symetrische, robuste Fehlerfunktion
            σ Parametervektor


                           23
Robust fitting Algorithmus




            24
Robust fitting Algorithmus
• von der Vorberechnung in die Iteration verschoben:




                         24
Robust fitting Algorithmus
• von der Vorberechnung in die Iteration verschoben:
   • Gradientenbilder SD (x)
                          ic




                         24
Robust fitting Algorithmus
• von der Vorberechnung in die Iteration verschoben:
   • Gradientenbilder SD (x)
                          ic

   • Project out der Darstellung SD (x)
                                    ic




                         24
Robust fitting Algorithmus
• von der Vorberechnung in die Iteration verschoben:
   • Gradientenbilder SD (x)
                          ic

   • Project out der Darstellung SD (x)
                                    ic

   • Berechnung der Hesse-Matrix H   po




                         24
Robust fitting Algorithmus
• von der Vorberechnung in die Iteration verschoben:
   • Gradientenbilder SD (x)
                          ic

   • Project out der Darstellung SD (x)
                                    ic

   • Berechnung der Hesse-Matrix H   po




             Robust, aber sehr langsam !
                         24
Efficient robust
normalization algorithm

     A0 =            Ti
                 i



            25
Efficient robust
normalization algorithm

     A0 =              Ti
                   i
      A0: Grunddarstellung
       Ti: Dreiecke aus s0


              25
Efficient robust
normalization algorithm




           26
Efficient robust
normalization algorithm




           26
Efficient robust
normalization algorithm



                   Ti: Dreieck
                   Tj: Dreieck

           26
Efficient robust
    normalization algorithm
•   Vorberechnung
     •   Berechne den Gradienten der Basisdarstellung: ∇A0
     •   Berechne die Jacobimatrix des Warp in (x;0)
     •   Berechne die Gradientenbilder SDic
     •   Berechne die Hesse-Matrix Hpi für jedes Dreieck
     •   Berechne die Darstellungs-Matrix HAi für jedes
         Dreieck

                             27
Efficient robust
    normalization algorithm
•   Iteration
      •   Warp I with W(x;p) to compute I(W(x;p))
      •   Berechne das Fehlerbild Eapp(x)

      •   Berechne HA = Σiς’i·HiA

      •   Berechne Δλ und aktualisiere λ und Eapp
      •   Berechne die Hesse-Matrix Hp und invertiere sie

      •   Berechne Σxς’ (Eapp(x)2) SDTic(x) Eapp(x)

      •   Berechne Δp
      •   Aktualisiere den Warp
                                  28
Experiment




    29
Experiment




    29
Experiment

• Vergleich der verschiedenen
  Algorithmen mit verschiedenen
  Überdeckungsanteilen und
  verschiedenen Darstellungsbildern




            29
Experiment

• Vergleich der verschiedenen
  Algorithmen mit verschiedenen
  Überdeckungsanteilen und
  verschiedenen Darstellungsbildern
• inklusive Hager-Belhumeur

            29
Hager-Belhumeur
  Algorithmus




       30
Hager-Belhumeur
          Algorithmus

• vorgestellt 1998




                     30
Hager-Belhumeur
          Algorithmus

• vorgestellt 1998
• basiert auf kleinste Quadrate Minimierung



                        30
Hager-Belhumeur
         Algorithmus

• vorgestellt 1998
• basiert auf kleinste Quadrate Minimierung
 • genauer: Iterated Reweighted Least Squares


                       30
Hager-Belhumeur
         Algorithmus

• vorgestellt 1998
• basiert auf kleinste Quadrate Minimierung
 • genauer: Iterated Reweighted Least Squares
• Die Hesse-Matrix wird als konstant angenommen

                      30
Experiment




    31
Experiment




    31
Experiment




    31
Experiment




    32
Experiment




    32
Experiment




    32
Konvergenz
 Konvergenz bei
10% Überdeckung
bei verschiedenen
 Algorithmen und
  verschiedenen
Darstellungsbildern




                      33
Konvergenz
 Konvergenz bei
10% Überdeckung
bei verschiedenen
 Algorithmen und
  verschiedenen
Darstellungsbildern

                Verbesserung des
              Konvergenzverhaltens
                       33
Konvergenz
 Konvergenz bei
50% Überdeckung
bei verschiedenen
 Algorithmen und
  verschiedenen
Darstellungsbildern




                      34
Konvergenz
 Konvergenz bei
50% Überdeckung
bei verschiedenen
 Algorithmen und
  verschiedenen
Darstellungsbildern

             Deutliche Verbesserung
            des Konvergenzverhaltens
                       34
Laufzeitvergleich
                                     Efficient
 pro                   Robust
         Project Out                 Robust
Frame                Normalization
                                   Normalization

Matlab     27 ms            1280 ms   129 ms

  C        4.3 ms       203.9 ms      20.5 ms




                       35
Laufzeitvergleich
                                        Efficient
 pro                      Robust
            Project Out                 Robust
Frame                   Normalization
                                      Normalization

Matlab           27 ms                   1280 ms            129 ms

  C              4.3 ms              203.9 ms               20.5 ms

         Datenset:                        Testhardware:
         547 Frames
         11 Formparameter                 DualCore Pentium 4 @ 3 GHz
         20 Darstellungsparameter
         9981 Farbpixel
                                    35
Tradition vs. Robustheit




           36
Tradition vs. Robustheit




           36
Was sollte ich nun
    wissen?




        37
Was sollte ich nun
    wissen?




        37
Was sollte ich nun
    wissen?




        37
Was sollte ich nun
    wissen?




        37
Was sollte ich nun
    wissen?




        37
Danke für Eure
Aufmerksamkeit !
Active Appearence Models mit Überdeckung

Weitere ähnliche Inhalte

Andere mochten auch

Unternehmenskommunikation 2.0
Unternehmenskommunikation 2.0Unternehmenskommunikation 2.0
Unternehmenskommunikation 2.0Changezweinull
 
2 da Clase
2 da Clase2 da Clase
2 da ClaseUNIANDES
 
Der beruf des webdesigners
Der beruf des webdesignersDer beruf des webdesigners
Der beruf des webdesignersElena Geise
 
20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...
20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...
20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...reynaldo19400000
 
Kummrow :: Mehr mit EDV machen
Kummrow :: Mehr mit EDV machenKummrow :: Mehr mit EDV machen
Kummrow :: Mehr mit EDV machenEckhard Kummrow
 
Guia de referencia de scratch
Guia de referencia de scratchGuia de referencia de scratch
Guia de referencia de scratchchecho98
 
ethority - Social Media Research Products
ethority - Social Media Research Productsethority - Social Media Research Products
ethority - Social Media Research Productsethority
 
Gripe porcina terminada
Gripe porcina terminadaGripe porcina terminada
Gripe porcina terminadamatiasnovillo
 
Presentacion Gripe A1
Presentacion Gripe A1Presentacion Gripe A1
Presentacion Gripe A1matiasnovillo
 

Andere mochten auch (19)

00 anleitung zur symptomdokumentation ppt
00 anleitung zur symptomdokumentation ppt00 anleitung zur symptomdokumentation ppt
00 anleitung zur symptomdokumentation ppt
 
Unternehmenskommunikation 2.0
Unternehmenskommunikation 2.0Unternehmenskommunikation 2.0
Unternehmenskommunikation 2.0
 
Dentición temporal y definitiva
Dentición temporal y definitivaDentición temporal y definitiva
Dentición temporal y definitiva
 
Presentación1
Presentación1Presentación1
Presentación1
 
2 da Clase
2 da Clase2 da Clase
2 da Clase
 
Twitter km uss
Twitter km ussTwitter km uss
Twitter km uss
 
Der beruf des webdesigners
Der beruf des webdesignersDer beruf des webdesigners
Der beruf des webdesigners
 
Todos fichados
Todos fichadosTodos fichados
Todos fichados
 
20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...
20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...
20120724 ideologia politica-y_actitudes_hacia_la_mineria_en_el_peru_-rottenba...
 
Kummrow :: Mehr mit EDV machen
Kummrow :: Mehr mit EDV machenKummrow :: Mehr mit EDV machen
Kummrow :: Mehr mit EDV machen
 
Planificacion acosta[1]
Planificacion acosta[1]Planificacion acosta[1]
Planificacion acosta[1]
 
Guia de referencia de scratch
Guia de referencia de scratchGuia de referencia de scratch
Guia de referencia de scratch
 
Exa mañana
Exa mañanaExa mañana
Exa mañana
 
Innovations 2014/2015 de
Innovations 2014/2015 deInnovations 2014/2015 de
Innovations 2014/2015 de
 
ethority - Social Media Research Products
ethority - Social Media Research Productsethority - Social Media Research Products
ethority - Social Media Research Products
 
4609 maturano1
4609 maturano14609 maturano1
4609 maturano1
 
Gripe porcina terminada
Gripe porcina terminadaGripe porcina terminada
Gripe porcina terminada
 
Presentacion Gripe A1
Presentacion Gripe A1Presentacion Gripe A1
Presentacion Gripe A1
 
Scratch
ScratchScratch
Scratch
 

Active Appearence Models mit Überdeckung

Hinweis der Redaktion