Software zur Erkennung von Körperhaltungen K an Bildschirmarbeitsplätzen tzen Vortrag zur Diplomarbeit Neuronale Mehrklassifikatorsysteme zur Erkennung der Körperhaltung K in Bildschirmarbeitsplatzumgebungen Referent: Markus Kirschmann
Einleitung Längerfristiges Ziel: Entwickeln einer Software zur Erkennung und Analyse des Sitzverhaltens. Diplomarbeit als Grundlagenforschung Fragestellungen Erkennen von Sitzhaltungen durch Software machbar? Welche Hardware / Eingabesensorik? Welche Sitzklassen? Welche Merkmale unterscheiden sie sich? Webcam als Eingabesensorik Bilder als Datenmaterial Frontalbilder als realistische Perspektive Zusätzliche Seitenaufnahme zu Kontrollzwecken
Vorarbeiten Aufnahme und Vorverarbeitung von Datenmaterial Ca 100 kurze Aufnahmeserien Zusätzlich ca 10.000 Bilder mit Markierungen Zusätzlich ca 8.000 Hintergrundbilder 10% der Aufnahmeserien mit Sitzklassen-Angabe Aufnahmen für Gesichtserkennung und Schultererkennung Programme zur Vorverarbeitung GetImagesUSB (Parallele Aufnahme von zwei Webcams) LabelIt (Markierung von Merkmalen in Bildern) Training der neuronalen Detektoren
Einschub: Anwendung Neuronaler Netze Neuronales Netz als Black Box Training anhand von Bildern und Lehrersignalen (Markierungen) Bsp. Gesichtsdetektor : Training Datenbasis mit Bildern und Positionen der enthaltenen Gesichter Training des Netzes mit positiven und negativen Beispielen Präsentation des Bildes / extrahierter Merkmale an das Netz Berechnen des Ausgabefehlers Anpassen des Netzes Solange bis gewünschte Fehlerrate erreicht Anwendung: Präsentation des Bildes Ausgabe des neuronales Netzes verwenden
Vorarbeiten Sitzhaltungen Viele Freiheitsgrade in Körperhaltung Unterschiedliche Kleidung, Körperproportionen, etc Keine einheitliche Definition in der Literatur Welche Merkmale werden zur visuellen Unterscheidung benötigt? Merkmale auf relativ hoher Ebene Einschränkung der Sitzklassen für Prototyp Hintere, mittlere und vordere Sitzhaltung
Ausgewählte Sitzhaltungen Mittlere Sitzhaltung / Aufgerichtet Seitliche Kamera (Kontrolle) Bildschirmkamera (Systemeingabe) Vordere Sitzhaltung / Zusammengesunken
Aufbau des Prototyps Vorwissen (Training) Schultermodelle Vorwissen (Training) Aufnahme Kopfposition bestimmen Merkmale Kopfbereich Merkmale Schulterbereich Klassifikaton Ausgabe Neuronale Netze (Haar-Classifier) Neuronale Netze (MLPs) Bzw. Template Matching
Extraktion Merkmale Eingabe-Bild
Extraktion Merkmale Eingabe-Bild Anwenden des Haar-Classifiers
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition Erkannte Gesichtsmerkmale
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition Erkannte Gesichtsmerkmale Merkmale Schulter Abschätzung der Suchbereiche
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition Erkannte Gesichtsmerkmale Merkmale Schulter Abschätzung der Suchbereiche Farbmaske erstellen
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition Erkannte Gesichtsmerkmale Merkmale Schulter Abschätzung der Suchbereiche Farbmaske erstellen Kantenbild erstellen
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition Erkannte Gesichtsmerkmale Merkmale Schulter Abschätzung der Suchbereiche Farbmaske erstellen Kantenbild erstellen Kantenbild mit Farbmaske filtern
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition Erkannte Gesichtsmerkmale Merkmale Schulter Abschätzung der Suchbereiche Farbmaske erstellen Kantenbild erstellen Kantenbild mit Farbmaske filtern Passendes Schultermodell suchen
Extraktion Merkmale Merkmale Kopfbereich Anwenden des Haar-Classifiers Erkannte Gesichtsposition Erkannte Gesichtsmerkmale Merkmale Schulter Abschätzung der Suchbereiche Farbmaske erstellen Kantenbild erstellen Kantenbild mit Farbmaske filtern Passendes Schultermodell suchen Weitere Merkmale berechnen Schulterneigung Schulterbreite Stirn
Klassifikation und Ergebnis Klassifikatormodul Neuronale Netze (MLPs) Alternativ: Template Matching Fusion durch Voting
Klassifikation und Ergebnis Klassifikatormodul Neuronale Netze (MLPs) Alternativ: Template Matching Fusion durch Voting Erkennungsraten Gesicht: Erkennung: ca. 82% Augen : ca. 50% Nase: ca. 70% Mund: ca. 81% Schultern: 70% Klassifikator: 90%
Klassifikation und Ergebnis Klassifikatormodul Neuronale Netze (MLPs) Alternativ: Template Matching Fusion durch Voting Erkennungsraten Gesicht: Erkennung: ca. 82% Augen : ca. 50% Nase: ca. 70% Mund: ca. 81% Schultern: 70% Klassifikator: 90% Gesamterkennungsrate: ca. 74%
Ergebnisse der Diplomarbeit Entwickelte Software: GetImagesUSB zur parallelen Aufnahme LabelIT zur Vorverarbeitung des Datenmaterials Detektoren zur Gesichtserkennung (Training) Prototyp SitFit zur Unterscheidung zweier Sitzhaltungen Erkennung von Sitzhaltungen auf Frontalbilder ist machbar, jedoch ist noch viel Arbeit zu erledigen: Weitere Sitzklassen und deren Merkmale definieren Weitere Aufnahmen von unterschiedlichen Personen Erweitertes Training der Neuronalen Netze Erweitern des Prototyps auf Zeitreihen
Vielen Dank für Ihre Aufmerksamkeit.