4.1 KiB
Hypothese: (besser formulieren, kommt irgendwo an den Anfang der Arbeit, mal Gucken, wo Meiko das hingepackt hatte...) LightEyes stellt Augen nur sehr grundlegende Formen dar, im Grunde graue Kreise und erzielt dabei verhältnismäßig gute Performance beim Training von Neuronalen Netzen. Daher ist davon auszugehen, dass das detailliertere Modellieren der Periorbitalregion keinen nennenswerten Einfluss auf die Leistung von Neuronalen Netzen hat.
Von Timms Arbeit: Über alle Experimente hinweg wurden die gleichen, in der medizinischen Bildsegmentierung etablierten Metriken erfasst [71]. Im Mittelpunkt stehen der Dice Score (auch F1 Score) und die IoU (auch Jaccard Index genannt) als Flächenüberlappungsmaße sowie Precision und Recall als Fehlerratenmaße. Besonders der Dice-Score fand in verwandten Arbeiten, wie etwa bei M. Calisto et al. (2021) [10] und Z. Fan et al. (2020) [19], Verwendung.
Meiko hat auch Dice und IoU überprüft. Nach jeder Epoche berehcnet.
Einleitung
In der vorliegenden Arbeit wurde die bestehende Implementierung von HEyes erweitert, sodass nun die Form der Periorbitalregion zufällig verändert werden kann. In Experiment 1 wird untersucht, wie sich die Änderungen auf die Laufzeit der Generierungspipeline auswirken. In diesem Experiment soll untersucht werden, ob diese Erweiterung einen Einfluss auf die Erkennungsleistung von KI-basierten Segmentierungsmodellen hat. Dazu wird ein Vergleich
Sachen, die ich mache:
- NN: Yolo26-seg small (guter Tradeoff zwischen Größe/Performance)
- Zwei Modelle mit 100% synthetischen Daten trainieren:
- Modell: mit alter Pipeline trainiert
- Modell: mit neuer Pipeline trainiert
- Wenn Zeit ist: ein Modell mit neuer Pipeline ohne AO
- Datensplit (Training - Validierung): 80 - 20? Meiko hatte 85 - 15?!
- Test-Set mit echten Daten
- entweder 500k oder Daten aus TEyeD oder OpenEDS?
- Vom Test-Set hängt auch die zu generierende Auflösung der synthetischen Bilder ab
- Störfaktoren sind nicht wirklich Teil meiner Arbeit, daher möchte ich am besten einen kontrollierten Datensatz, aber mit verschiedenen Ethnien
- Möglichst wenig Störfaktoren (wie Brille, Reflektionen, verschiedene Beleuchtung) im Test-Set
- Auch Bilder mit Teilweise/Vollständig verdeckter Pupille
- entweder 500k oder Daten aus TEyeD oder OpenEDS?
- Synthetische Daten generieren
- Wie viele Bilder? 5000? 10k?! Meine Hardware hat da wohl auch einen Einfluss drauf (s. u.)
- Es werden explizit auch Bilder mit (teilweise) verdeckter Pupille erzeugt
- Grauwerte aus echten Daten extrahieren
- möglichst nicht aus dem Test-Set selbst, sondern aus anderen Daten, wobei ich mir da nicht sicher bin, da es ja eigentlich keinen Einfluss auf den Vergleich den ich machen möchte hat
- Um Überrepräsentation von verdeckten Pupillen zu vermeiden wird der Exponentielle-Faktor für den Lidschluss verwendet, damit es mehr Bilder mit sichtbaren Pupillen gibt
- Datenaugmentieren:
- Flip (50%) für 50/50 Split aus linkem/rechtem Augen
- leichter Blur
- leichte Gamma/Helligkeitsanpassung
Sachen, die ich am Ende sehen möchte:
Graphen plotten über alle Epochen?
- Train Loss
- Validation Loss (Meiko hat das auch irgendwie für jede Epoche berechnet)
- Precision und Recall, okay für Yolo hat er Mask Precision und Recall, was auch immer das sein soll Meiko hatte auch:
- Validation mAP50
- Validation mAP50-95
Jeweils für das finale Modell:
- IoU und Dice für die Test-Set-Bilder berechnen
- Tabelle: Mean + SD für IoU und Dice für beide Modelle
- Ich möchte auch einen Boxplot zeigen können für IoU und Dice
- Ich möchte einzelne Bilder, die extrem schlecht/gut waren rauspicken können und ihre Masken (Ground Truth und predicted) + Scores zeigen können
Genutzte Hardware:
Beide Experimente wurden auf einem Computer mit folgender Hardware ausgeführt:
- CPU: AMD Ryzen 7 2700x mit 8 Kernen (16 Threads)
- GPU: NVIDIA RTX 3080 mit 10 GB VRAM
- RAM: 32 GB DDR4
TODO: Mitschriften letztes Meeting, mal an den richtigen Ort bringen:
Hypothese: Die Leistung der NNs wird sich nicht ändern (siehe LiteEyes)
Yolo S -> sehr gute Performance Laufzeit tradeoff
Alle Entscheidungen gut begründen -> z.B. welche Yolo Version, warum?
Ergebnisse Interpretieren